mirror of
				https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
				synced 2025-11-04 04:27:59 +00:00 
			
		
		
		
	Compare commits
	
		
			18 Commits
		
	
	
		
			hotfix/can
			...
			release-te
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					aac02cb1c9 | ||
| 
						 | 
					6ece024535 | ||
| 
						 | 
					4837b0e026 | ||
| 
						 | 
					0eca082a4d | ||
| 
						 | 
					db4672a9a2 | ||
| 
						 | 
					9e58a9d7b7 | ||
| 
						 | 
					f083c3488c | ||
| 
						 | 
					b28655a5bd | ||
| 
						 | 
					124b6054b5 | ||
| 
						 | 
					d79917d20f | ||
| 
						 | 
					c0bb71aed2 | ||
| 
						 | 
					5e32798159 | ||
| 
						 | 
					01fa2d3977 | ||
| 
						 | 
					f0daa18906 | ||
| 
						 | 
					d6d454bfc1 | ||
| 
						 | 
					f30b1ca02e | ||
| 
						 | 
					84f3d4ea5d | ||
| 
						 | 
					a5fb061359 | 
@@ -1,5 +1,5 @@
 | 
			
		||||
# wlan-opensync-wifi-controller
 | 
			
		||||
 | 
			
		||||
# wlan-opensync-wifi-controller  #TESTING
 | 
			
		||||
 
 | 
			
		||||
Opensync Wifi Controller - accepts connections from the access points, pushes configuration, reads metrics from the topics on MQTT broker.
 | 
			
		||||
 | 
			
		||||
Components in this repository depend on other wlan-cloud repositories. 
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -30,6 +30,7 @@ import com.telecominfraproject.wlan.client.session.models.ClientSessionDetails;
 | 
			
		||||
import com.telecominfraproject.wlan.client.session.models.ClientSessionMetricDetails;
 | 
			
		||||
import com.telecominfraproject.wlan.cloudeventdispatcher.CloudEventDispatcherInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.ChannelBandwidth;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.ChannelHopReason;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.DetectedAuthMode;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.NeighborScanPacketType;
 | 
			
		||||
@@ -41,7 +42,7 @@ import com.telecominfraproject.wlan.core.model.utils.DecibelUtils;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.models.Equipment;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities.OvsdbToWlanCloudTypeMappingUtility;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.util.OvsdbToWlanCloudTypeMappingUtility;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.Profile;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.ProfileContainer;
 | 
			
		||||
@@ -74,7 +75,10 @@ import com.telecominfraproject.wlan.status.equipment.report.models.EquipmentPerR
 | 
			
		||||
import com.telecominfraproject.wlan.status.equipment.report.models.OperatingSystemPerformance;
 | 
			
		||||
import com.telecominfraproject.wlan.status.equipment.report.models.RadioUtilizationReport;
 | 
			
		||||
import com.telecominfraproject.wlan.status.models.Status;
 | 
			
		||||
import com.telecominfraproject.wlan.status.models.StatusCode;
 | 
			
		||||
import com.telecominfraproject.wlan.status.models.StatusDataType;
 | 
			
		||||
import com.telecominfraproject.wlan.status.network.models.NetworkAdminStatusData;
 | 
			
		||||
import com.telecominfraproject.wlan.systemevent.equipment.realtime.RealTimeChannelHopEvent;
 | 
			
		||||
import com.telecominfraproject.wlan.systemevent.equipment.realtime.RealTimeEventType;
 | 
			
		||||
import com.telecominfraproject.wlan.systemevent.equipment.realtime.RealTimeSipCallReportEvent;
 | 
			
		||||
import com.telecominfraproject.wlan.systemevent.equipment.realtime.RealTimeSipCallStartEvent;
 | 
			
		||||
@@ -91,6 +95,7 @@ import sts.OpensyncStats.AssocType;
 | 
			
		||||
import sts.OpensyncStats.CallReport;
 | 
			
		||||
import sts.OpensyncStats.CallStart;
 | 
			
		||||
import sts.OpensyncStats.CallStop;
 | 
			
		||||
import sts.OpensyncStats.ChannelSwitchReason;
 | 
			
		||||
import sts.OpensyncStats.Client;
 | 
			
		||||
import sts.OpensyncStats.ClientReport;
 | 
			
		||||
import sts.OpensyncStats.DNSProbeMetric;
 | 
			
		||||
@@ -147,9 +152,9 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
    private CloudEventDispatcherInterface equipmentMetricsCollectorInterface;
 | 
			
		||||
 | 
			
		||||
    void processMqttMessage(String topic, WCStatsReport wcStatsReport) {
 | 
			
		||||
        LOG.debug("Received WCStatsReport {}", wcStatsReport.toString());
 | 
			
		||||
        LOG.info("Received WCStatsReport {}", wcStatsReport.toString());
 | 
			
		||||
 | 
			
		||||
        LOG.info("Received report on topic {}", topic);
 | 
			
		||||
        LOG.debug("Received report on topic {}", topic);
 | 
			
		||||
        int customerId = extractCustomerIdFromTopic(topic);
 | 
			
		||||
 | 
			
		||||
        long equipmentId = extractEquipmentIdFromTopic(topic);
 | 
			
		||||
@@ -289,14 +294,13 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    void processEventReport(Report report, int customerId, long equipmentId, String apId, long locationId) {
 | 
			
		||||
 | 
			
		||||
        report.getEventReportList().stream().forEach(e -> {
 | 
			
		||||
 | 
			
		||||
            for (sts.OpensyncStats.EventReport.ClientSession apEventClientSession : e.getClientSessionList()) {
 | 
			
		||||
 | 
			
		||||
                LOG.info("Processing EventReport::ClientSession {}", apEventClientSession);
 | 
			
		||||
                LOG.debug("Processing EventReport::ClientSession {}", apEventClientSession);
 | 
			
		||||
 | 
			
		||||
                processClientConnectEvent(customerId, equipmentId, locationId, e, apEventClientSession);
 | 
			
		||||
 | 
			
		||||
@@ -318,10 +322,74 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            publishChannelHopEvents(customerId, equipmentId, e);
 | 
			
		||||
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void publishChannelHopEvents(int customerId, long equipmentId, EventReport e) {
 | 
			
		||||
        
 | 
			
		||||
        LOG.info("publishChannelHopEvents for customerId {} equipmentId {}");
 | 
			
		||||
        
 | 
			
		||||
        List<SystemEvent> events = new ArrayList<>();
 | 
			
		||||
        
 | 
			
		||||
        for (sts.OpensyncStats.EventReport.ChannelSwitchEvent channelSwitchEvent : e.getChannelSwitchList()) {
 | 
			
		||||
            Equipment equipment = equipmentServiceInterface.getOrNull(equipmentId);
 | 
			
		||||
            if (equipment == null)
 | 
			
		||||
                continue;
 | 
			
		||||
            RadioType radioType = null;
 | 
			
		||||
            Long timestamp = null;
 | 
			
		||||
            ChannelHopReason reason = null;
 | 
			
		||||
            Integer channel = null;
 | 
			
		||||
            if (channelSwitchEvent.hasBand()) {                   
 | 
			
		||||
               radioType = OvsdbToWlanCloudTypeMappingUtility
 | 
			
		||||
                .getRadioTypeFromOpensyncStatsRadioBandType(channelSwitchEvent.getBand());            
 | 
			
		||||
            }
 | 
			
		||||
            if (RadioType.isUnsupported(radioType)) {
 | 
			
		||||
                LOG.warn("publishChannelHopEvents:RadioType {} is unsupported, cannot send RealTimeChannelHopEvent for {}", radioType, channelSwitchEvent);
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            if (channelSwitchEvent.hasTimestampMs()) {
 | 
			
		||||
                timestamp = channelSwitchEvent.getTimestampMs();
 | 
			
		||||
            }
 | 
			
		||||
            if (timestamp == null) {
 | 
			
		||||
                LOG.warn("publishChannelHopEvents:timestamp is null, cannot send RealTimeChannelHopEvent for {}", channelSwitchEvent);
 | 
			
		||||
                continue;  
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            if (channelSwitchEvent.hasReason()) {
 | 
			
		||||
                if (channelSwitchEvent.getReason().equals(ChannelSwitchReason.high_interference)) reason = ChannelHopReason.HighInterference;
 | 
			
		||||
                else if (channelSwitchEvent.getReason().equals(ChannelSwitchReason.radar_detected)) reason = ChannelHopReason.RadarDetected;
 | 
			
		||||
            }
 | 
			
		||||
            if (ChannelHopReason.isUnsupported(reason)) {
 | 
			
		||||
                LOG.warn("publishChannelHopEvents:reason {} is unsupported, cannot send RealTimeChannelHopEvent for {}", channelSwitchEvent.getReason(), channelSwitchEvent);
 | 
			
		||||
                continue; 
 | 
			
		||||
            }
 | 
			
		||||
            if (channelSwitchEvent.hasChannel()) {
 | 
			
		||||
                channel = channelSwitchEvent.getChannel();
 | 
			
		||||
            }
 | 
			
		||||
            if (channel == null) {
 | 
			
		||||
                LOG.warn("publishChannelHopEvents:channel is null, cannot send RealTimeChannelHopEvent for {}", channelSwitchEvent);
 | 
			
		||||
                continue; 
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            RealTimeChannelHopEvent channelHopEvent = new RealTimeChannelHopEvent(RealTimeEventType.Channel_Hop, customerId, equipmentId, radioType, channel, ((ApElementConfiguration)equipment.getDetails()).getRadioMap().get(radioType).getChannelNumber(), reason, timestamp);
 | 
			
		||||
            
 | 
			
		||||
            events.add(channelHopEvent);
 | 
			
		||||
            
 | 
			
		||||
            LOG.debug("publishChannelHopEvents:Adding ChannelHopEvent to bulk list {}", channelHopEvent);
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        if (events.size() > 0) {
 | 
			
		||||
            LOG.info("publishChannelHopEvents:publishEventsBulk: {}", events);
 | 
			
		||||
            equipmentMetricsCollectorInterface.publishEventsBulk(events);
 | 
			
		||||
        } else {
 | 
			
		||||
            LOG.info("publishChannelHopEvents:No ChannelHopEvents in report");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected void processClientConnectEvent(int customerId, long equipmentId, long locationId, EventReport e,
 | 
			
		||||
            sts.OpensyncStats.EventReport.ClientSession apEventClientSession) {
 | 
			
		||||
        for (ClientConnectEvent clientConnectEvent : apEventClientSession.getClientConnectEventList()) {
 | 
			
		||||
@@ -442,7 +510,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                }
 | 
			
		||||
                clientSessionDetails.setAssociationState(AssociationState._802_11_Associated);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientSession.getDetails() == null) {
 | 
			
		||||
                    clientSession.setDetails(clientSessionDetails);
 | 
			
		||||
                } else {
 | 
			
		||||
@@ -453,7 +520,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -509,7 +575,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
                clientSessionDetails.setSessionId(apEventClientSession.getSessionId());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientDisconnectEvent.hasLrcvUpTsInUs()) {
 | 
			
		||||
                    clientSessionDetails.setLastRxTimestamp(clientDisconnectEvent.getLrcvUpTsInUs());
 | 
			
		||||
                }
 | 
			
		||||
@@ -527,7 +592,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                }
 | 
			
		||||
                clientSessionDetails.setAssociationState(AssociationState.Disconnected);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientSession.getDetails() == null) {
 | 
			
		||||
                    clientSession.setDetails(clientSessionDetails);
 | 
			
		||||
                } else {
 | 
			
		||||
@@ -536,9 +600,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -589,7 +652,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                    clientSessionDetails.setAssociationState(AssociationState._802_11_Authenticated);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientSession.getDetails() == null) {
 | 
			
		||||
                    clientSession.setDetails(clientSessionDetails);
 | 
			
		||||
                } else {
 | 
			
		||||
@@ -598,9 +660,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -673,7 +734,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -709,7 +770,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession.setLocationId(locationId);
 | 
			
		||||
                clientSession.setMacAddress(new MacAddress(clientFailureEvent.getStaMac()));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                ClientSessionDetails clientSessionDetails = new ClientSessionDetails();
 | 
			
		||||
 | 
			
		||||
                if (clientFailureEvent.hasSsid()) {
 | 
			
		||||
@@ -736,7 +796,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -772,10 +832,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession.setLocationId(locationId);
 | 
			
		||||
                clientSession.setMacAddress(new MacAddress(clientFirstDataEvent.getStaMac()));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                ClientSessionDetails clientSessionDetails = new ClientSessionDetails();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientFirstDataEvent.hasFdataRxUpTsInUs()) {
 | 
			
		||||
                    clientSessionDetails.setFirstDataRcvdTimestamp(clientFirstDataEvent.getFdataRxUpTsInUs());
 | 
			
		||||
                }
 | 
			
		||||
@@ -797,7 +855,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -833,12 +891,10 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession.setLocationId(locationId);
 | 
			
		||||
                clientSession.setMacAddress(new MacAddress(clientIdEvent.getCltMac()));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                ClientSessionDetails clientSessionDetails = new ClientSessionDetails();
 | 
			
		||||
 | 
			
		||||
                clientSessionDetails.setSessionId(apEventClientSession.getSessionId());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                if (clientSession.getDetails() == null) {
 | 
			
		||||
                    clientSession.setDetails(clientSessionDetails);
 | 
			
		||||
                } else {
 | 
			
		||||
@@ -848,7 +904,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -886,10 +942,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
                ClientSessionDetails clientSessionDetails = new ClientSessionDetails();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                clientSessionDetails.setSessionId(apEventClientSession.getSessionId());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                try {
 | 
			
		||||
                    clientSessionDetails
 | 
			
		||||
                            .setIpAddress(InetAddress.getByAddress(clientIpEvent.getIpAddr().toByteArray()));
 | 
			
		||||
@@ -907,7 +961,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no clientmac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no clientmac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -974,7 +1028,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                clientSession = clientServiceInterface.updateSession(clientSession);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                LOG.info("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
                LOG.warn("Cannot update client or client session when no client mac address is present");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -1046,34 +1100,34 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
                if (apRtpFlowStats.hasDirection()) {
 | 
			
		||||
                    switch (apRtpFlowStats.getDirection()) {
 | 
			
		||||
                        case RTP_DOWNSTREAM:
 | 
			
		||||
                            cloudRtpStats.setDirection(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.DOWNSTREAM);
 | 
			
		||||
                            break;
 | 
			
		||||
                        case RTP_UPSTREAM:
 | 
			
		||||
                            cloudRtpStats.setDirection(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.UPSTREAM);
 | 
			
		||||
                            break;
 | 
			
		||||
                        default:
 | 
			
		||||
                            cloudRtpStats.setDirection(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.UNSUPPORTED);
 | 
			
		||||
                    case RTP_DOWNSTREAM:
 | 
			
		||||
                        cloudRtpStats.setDirection(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.DOWNSTREAM);
 | 
			
		||||
                        break;
 | 
			
		||||
                    case RTP_UPSTREAM:
 | 
			
		||||
                        cloudRtpStats.setDirection(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.UPSTREAM);
 | 
			
		||||
                        break;
 | 
			
		||||
                    default:
 | 
			
		||||
                        cloudRtpStats.setDirection(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowDirection.UNSUPPORTED);
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (apRtpFlowStats.hasRtpFlowType()) {
 | 
			
		||||
                    switch (apRtpFlowStats.getRtpFlowType()) {
 | 
			
		||||
                        case RTP_VIDEO:
 | 
			
		||||
                            cloudRtpStats.setFlowType(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.VIDEO);
 | 
			
		||||
                            break;
 | 
			
		||||
                        case RTP_VOICE:
 | 
			
		||||
                            cloudRtpStats.setFlowType(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.VOICE);
 | 
			
		||||
                            break;
 | 
			
		||||
                        default:
 | 
			
		||||
                            cloudRtpStats.setFlowType(
 | 
			
		||||
                                    com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.UNSUPPORTED);
 | 
			
		||||
                            break;
 | 
			
		||||
                    case RTP_VIDEO:
 | 
			
		||||
                        cloudRtpStats.setFlowType(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.VIDEO);
 | 
			
		||||
                        break;
 | 
			
		||||
                    case RTP_VOICE:
 | 
			
		||||
                        cloudRtpStats.setFlowType(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.VOICE);
 | 
			
		||||
                        break;
 | 
			
		||||
                    default:
 | 
			
		||||
                        cloudRtpStats.setFlowType(
 | 
			
		||||
                                com.telecominfraproject.wlan.systemevent.equipment.realtime.RtpFlowType.UNSUPPORTED);
 | 
			
		||||
                        break;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@@ -1101,12 +1155,10 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                    cloudRtpStats.setPacketLossPercentage(apRtpFlowStats.getPacketLossPercent());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                cloudRtpFlowStatsList.add(cloudRtpStats);
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            RealTimeSipCallReportEvent cloudSipCallReportEvent = new RealTimeSipCallReportEvent(customerId, equipmentId,
 | 
			
		||||
                    eventTimestamp);
 | 
			
		||||
            cloudSipCallReportEvent.setClientMacAddress(MacAddress.valueOf(callReport.getClientMac()));
 | 
			
		||||
@@ -1167,10 +1219,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
            if (apCallStop.hasCallDuration()) {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                cloudSipCallStopEvent.setCallDuration(apCallStop.getCallDuration());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (apCallStop.hasClientMac()) {
 | 
			
		||||
@@ -1182,15 +1232,15 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
            if (apCallStop.hasReason()) {
 | 
			
		||||
 | 
			
		||||
                switch (apCallStop.getReason()) {
 | 
			
		||||
                    case BYE_OK:
 | 
			
		||||
                        cloudSipCallStopEvent.setReason(SipCallStopReason.BYE_OK);
 | 
			
		||||
                        break;
 | 
			
		||||
                    case CALL_DROPPED:
 | 
			
		||||
                        cloudSipCallStopEvent.setReason(SipCallStopReason.DROPPED);
 | 
			
		||||
                        break;
 | 
			
		||||
                case BYE_OK:
 | 
			
		||||
                    cloudSipCallStopEvent.setReason(SipCallStopReason.BYE_OK);
 | 
			
		||||
                    break;
 | 
			
		||||
                case CALL_DROPPED:
 | 
			
		||||
                    cloudSipCallStopEvent.setReason(SipCallStopReason.DROPPED);
 | 
			
		||||
                    break;
 | 
			
		||||
 | 
			
		||||
                    default:
 | 
			
		||||
                        cloudSipCallStopEvent.setReason(SipCallStopReason.UNSUPPORTED);
 | 
			
		||||
                default:
 | 
			
		||||
                    cloudSipCallStopEvent.setReason(SipCallStopReason.UNSUPPORTED);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
@@ -1208,7 +1258,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
            eventsList.add(cloudSipCallStopEvent);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -1249,7 +1298,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
            eventsList.add(rtsStartEvent);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -1339,10 +1387,9 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    void populateApNodeMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
 | 
			
		||||
            long locationId) {
 | 
			
		||||
        LOG.debug("populateApNodeMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        LOG.info("populateApNodeMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        ApNodeMetrics apNodeMetrics = new ApNodeMetrics();
 | 
			
		||||
        ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
 | 
			
		||||
 | 
			
		||||
@@ -1535,7 +1582,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                // we need to perform a weighted average here because the
 | 
			
		||||
                // samples are in percentage, and may be of different durations
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                busyTx += surveySample.getBusyTx() * surveySample.getDurationMs();
 | 
			
		||||
                busyRx += surveySample.getBusyRx() * surveySample.getDurationMs();
 | 
			
		||||
                busy += surveySample.getBusy() * surveySample.getDurationMs();
 | 
			
		||||
@@ -1543,7 +1589,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                totalDurationMs += surveySample.getDurationMs();
 | 
			
		||||
                noiseList.add(getNegativeSignedIntFrom8BitUnsigned(surveySample.getNoise()));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (totalDurationMs > 0) {
 | 
			
		||||
@@ -1593,6 +1638,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        populateNetworkProbeMetrics(report, apNodeMetrics);
 | 
			
		||||
        updateNetworkAdminStatusReport(customerId, equipmentId, apNodeMetrics);
 | 
			
		||||
        RadioUtilizationReport radioUtilizationReport = new RadioUtilizationReport();
 | 
			
		||||
        radioUtilizationReport.setAvgNoiseFloor(avgNoiseFloor);
 | 
			
		||||
        radioUtilizationReport.setRadioUtilization(radioUtilizationDetailsMap);
 | 
			
		||||
@@ -1601,9 +1647,78 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
        updateDeviceStatusRadioUtilizationReport(customerId, equipmentId, radioUtilizationReport);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void updateNetworkAdminStatusReport(int customerId, long equipmentId, ApNodeMetrics apNodeMetrics) {
 | 
			
		||||
        apNodeMetrics.getNetworkProbeMetrics().forEach(n -> {
 | 
			
		||||
 | 
			
		||||
            
 | 
			
		||||
            LOG.info("Update NetworkAdminStatusReport for NetworkProbeMetrics {}", n.toString());
 | 
			
		||||
            
 | 
			
		||||
            Status networkAdminStatus = statusServiceInterface.getOrNull(customerId, equipmentId,
 | 
			
		||||
                    StatusDataType.NETWORK_ADMIN);
 | 
			
		||||
 | 
			
		||||
            if (networkAdminStatus == null) {
 | 
			
		||||
                networkAdminStatus = new Status();
 | 
			
		||||
                networkAdminStatus.setCustomerId(customerId);
 | 
			
		||||
                networkAdminStatus.setEquipmentId(equipmentId);
 | 
			
		||||
                networkAdminStatus.setCreatedTimestamp(System.currentTimeMillis());
 | 
			
		||||
                networkAdminStatus.setStatusDataType(StatusDataType.NETWORK_ADMIN);
 | 
			
		||||
                networkAdminStatus.setDetails(new NetworkAdminStatusData());
 | 
			
		||||
                networkAdminStatus = statusServiceInterface.update(networkAdminStatus);
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            NetworkAdminStatusData statusData = (NetworkAdminStatusData) networkAdminStatus.getDetails();
 | 
			
		||||
            
 | 
			
		||||
            if (n.getDnsState() == null) {
 | 
			
		||||
                LOG.debug("No DnsState present in networkProbeMetrics, DnsState and CloudLinkStatus set to 'normal");
 | 
			
		||||
                statusData.setDnsStatus(StatusCode.normal);
 | 
			
		||||
                statusData.setCloudLinkStatus(StatusCode.normal);
 | 
			
		||||
            } else {
 | 
			
		||||
                statusData.setDnsStatus(stateUpDownErrorToStatusCode(n.getDnsState()));
 | 
			
		||||
                statusData.setCloudLinkStatus(stateUpDownErrorToStatusCode(n.getDnsState()));
 | 
			
		||||
            }
 | 
			
		||||
            if (n.getDhcpState() == null) {
 | 
			
		||||
                LOG.debug("No DhcpState present in networkProbeMetrics, set to 'normal");
 | 
			
		||||
                statusData.setDhcpStatus(StatusCode.normal);
 | 
			
		||||
            } else {
 | 
			
		||||
                statusData.setDhcpStatus(stateUpDownErrorToStatusCode(n.getDhcpState()));
 | 
			
		||||
            }
 | 
			
		||||
            if (n.getRadiusState() == null) {
 | 
			
		||||
                LOG.debug("No RadiusState present in networkProbeMetrics, set to 'normal");
 | 
			
		||||
                statusData.setRadiusStatus(StatusCode.normal);
 | 
			
		||||
            } else {
 | 
			
		||||
                statusData.setRadiusStatus(stateUpDownErrorToStatusCode(n.getRadiusState()));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            networkAdminStatus.setDetails(statusData);
 | 
			
		||||
 | 
			
		||||
            networkAdminStatus = statusServiceInterface.update(networkAdminStatus);
 | 
			
		||||
 | 
			
		||||
            LOG.debug("Updated NetworkAdminStatus {}", networkAdminStatus);
 | 
			
		||||
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static StatusCode stateUpDownErrorToStatusCode(StateUpDownError state) {
 | 
			
		||||
        
 | 
			
		||||
        switch (state) {
 | 
			
		||||
        case enabled:
 | 
			
		||||
            return StatusCode.normal;
 | 
			
		||||
        case error:
 | 
			
		||||
            return StatusCode.error;
 | 
			
		||||
        case disabled:
 | 
			
		||||
            return StatusCode.disabled;
 | 
			
		||||
        case UNSUPPORTED:
 | 
			
		||||
            return StatusCode.requiresAttention;
 | 
			
		||||
        default:
 | 
			
		||||
            return StatusCode.normal;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void updateDeviceStatusRadioUtilizationReport(int customerId, long equipmentId,
 | 
			
		||||
            RadioUtilizationReport radioUtilizationReport) {
 | 
			
		||||
        LOG.debug(
 | 
			
		||||
        LOG.info(
 | 
			
		||||
                "Processing updateDeviceStatusRadioUtilizationReport for equipmentId {} with RadioUtilizationReport {}",
 | 
			
		||||
                equipmentId, radioUtilizationReport);
 | 
			
		||||
 | 
			
		||||
@@ -1657,7 +1772,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                        ipAddress = InetAddress.getByName(dnsProbeMetricFromAp.getServerIP());
 | 
			
		||||
                        cloudDnsProbeMetric.setDnsServerIp(ipAddress);
 | 
			
		||||
                    } catch (UnknownHostException e) {
 | 
			
		||||
                        LOG.error("Could not get DNS Server IP from network_probe service_metrics_collection_config", e);
 | 
			
		||||
                        LOG.error("Could not get DNS Server IP from network_probe service_metrics_collection_config",
 | 
			
		||||
                                e);
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@@ -1671,17 +1787,16 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                if (radiusMetrics.hasLatency()) {
 | 
			
		||||
                    networkProbeMetrics.setRadiusLatencyInMs(radiusMetrics.getLatency());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (radiusMetrics.hasRadiusState()) {
 | 
			
		||||
                    StateUpDownError radiusState = OvsdbToWlanCloudTypeMappingUtility
 | 
			
		||||
                            .getCloudMetricsStateFromOpensyncStatsStateUpDown(radiusMetrics.getRadiusState());
 | 
			
		||||
 | 
			
		||||
                    if (radiusMetrics.hasRadiusState()) {
 | 
			
		||||
                        StateUpDownError radiusState = OvsdbToWlanCloudTypeMappingUtility
 | 
			
		||||
                                .getCloudMetricsStateFromOpensyncStatsStateUpDown(radiusMetrics.getRadiusState());
 | 
			
		||||
 | 
			
		||||
                        networkProbeMetrics.setRadiusState(radiusState);
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
                    networkProbeMetrics.setRadiusState(radiusState);
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (networkProbe.hasVlanProbe()) {
 | 
			
		||||
@@ -1693,7 +1808,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                    StateUpDownError dhcpState = OvsdbToWlanCloudTypeMappingUtility
 | 
			
		||||
                            .getCloudMetricsStateFromOpensyncStatsStateUpDown(vlanMetrics.getDhcpState());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    networkProbeMetrics.setDhcpState(dhcpState);
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
@@ -1727,14 +1841,13 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
    void populateApClientMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
 | 
			
		||||
            long locationId) {
 | 
			
		||||
        LOG.debug("populateApClientMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        LOG.info("populateApClientMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
 | 
			
		||||
        for (ClientReport clReport : report.getClientsList()) {
 | 
			
		||||
            for (Client cl : clReport.getClientListList()) {
 | 
			
		||||
 | 
			
		||||
                if (cl.getMacAddress() == null) {
 | 
			
		||||
                    LOG.debug(
 | 
			
		||||
                            "No mac address for Client {}, cannot set device mac address for client in ClientMetrics.",
 | 
			
		||||
                    LOG.debug("No mac address for Client {}, cannot set device mac address for client in ClientMetrics.",
 | 
			
		||||
                            cl);
 | 
			
		||||
                    continue;
 | 
			
		||||
                }
 | 
			
		||||
@@ -1831,7 +1944,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
    void populateNeighbourScanReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
 | 
			
		||||
            long equipmentId, long locationId) {
 | 
			
		||||
        LOG.debug("populateNeighbourScanReports for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        LOG.info("populateNeighbourScanReports for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
 | 
			
		||||
        for (Neighbor neighbor : report.getNeighborsList()) {
 | 
			
		||||
 | 
			
		||||
@@ -1905,18 +2018,18 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
            boolean isReassociation = true;
 | 
			
		||||
            if (clientInstance == null) {
 | 
			
		||||
 | 
			
		||||
                LOG.info("Cannot get client instance for {}", client.getMacAddress());
 | 
			
		||||
                LOG.debug("Cannot get client instance for {}", client.getMacAddress());
 | 
			
		||||
                return null;
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            LOG.info("Client {}", clientInstance);
 | 
			
		||||
            LOG.debug("Client {}", clientInstance);
 | 
			
		||||
 | 
			
		||||
            ClientSession clientSession = clientServiceInterface.getSessionOrNull(customerId, equipmentId,
 | 
			
		||||
                    clientInstance.getMacAddress());
 | 
			
		||||
 | 
			
		||||
            if (clientSession == null) {
 | 
			
		||||
                LOG.info("Cannot get client session for {}", clientInstance.getMacAddress());
 | 
			
		||||
                LOG.warn("Cannot get client session for {}", clientInstance.getMacAddress());
 | 
			
		||||
                return null;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@@ -1974,7 +2087,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                    latestClientSessionDetails.setDynamicVlan(ssidConfig.getVlanId());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                RadioBasedSsidConfiguration radioConfig = ssidConfig.getRadioBasedConfigs().get(radioType);
 | 
			
		||||
                latestClientSessionDetails
 | 
			
		||||
                        .setIs11KUsed(radioConfig.getEnable80211k() != null ? radioConfig.getEnable80211k() : false);
 | 
			
		||||
@@ -2003,12 +2115,11 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
    ClientSessionMetricDetails calculateClientSessionMetricDetails(sts.OpensyncStats.Client client, long timestamp) {
 | 
			
		||||
 | 
			
		||||
        LOG.debug("calculateClientSessionMetricDetails for Client {} at timestamp {}", client.getMacAddress(),
 | 
			
		||||
        LOG.info("calculateClientSessionMetricDetails for Client {} at timestamp {}", client.getMacAddress(),
 | 
			
		||||
                timestamp);
 | 
			
		||||
 | 
			
		||||
        ClientSessionMetricDetails metricDetails = new ClientSessionMetricDetails();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        if (LOG.isDebugEnabled())
 | 
			
		||||
            LOG.debug("Stats: {} DurationMs {}", client.getStats(), client.getDurationMs());
 | 
			
		||||
        int rssi = client.getStats().getRssi();
 | 
			
		||||
@@ -2049,7 +2160,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                LOG.debug("RxMbps {} TxMbps {} ", metricDetails.getRxMbps(), metricDetails.getTxMbps());
 | 
			
		||||
 | 
			
		||||
        } else {
 | 
			
		||||
            LOG.info("Cannot calculate tx/rx throughput for Client {} based on duration of {} Ms",
 | 
			
		||||
            LOG.warn("Cannot calculate tx/rx throughput for Client {} based on duration of {} Ms",
 | 
			
		||||
                    client.getMacAddress(), client.getDurationMs());
 | 
			
		||||
        }
 | 
			
		||||
        metricDetails.setLastMetricTimestamp(timestamp);
 | 
			
		||||
@@ -2060,16 +2171,14 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
    void populateApSsidMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
 | 
			
		||||
            String apId, long locationId) {
 | 
			
		||||
 | 
			
		||||
        LOG.debug("populateApSsidMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        LOG.info("populateApSsidMetrics for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
 | 
			
		||||
        smr.setLocationId(locationId);
 | 
			
		||||
        ApSsidMetrics apSsidMetrics = new ApSsidMetrics();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        smr.setDetails(apSsidMetrics);
 | 
			
		||||
        metricRecordList.add(smr);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        for (ClientReport clientReport : report.getClientsList()) {
 | 
			
		||||
 | 
			
		||||
            LOG.debug("ClientReport for channel {} RadioBand {}", clientReport.getChannel(), clientReport.getBand());
 | 
			
		||||
@@ -2120,7 +2229,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
            for (Client client : clientReport.getClientListList()) {
 | 
			
		||||
                if (client.hasStats()) {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    if (client.hasSsid()) {
 | 
			
		||||
                        ssid = client.getSsid();
 | 
			
		||||
                    }
 | 
			
		||||
@@ -2145,7 +2253,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                    try {
 | 
			
		||||
 | 
			
		||||
                        if (client.hasConnected() && client.getConnected() && client.hasMacAddress()) {
 | 
			
		||||
                            // update service_metrics_collection_config for connected client
 | 
			
		||||
                            // update service_metrics_collection_config for
 | 
			
		||||
                            // connected client
 | 
			
		||||
                            ClientSession session = handleClientSessionMetricsUpdate(customerId, equipmentId,
 | 
			
		||||
                                    locationId, radioType, clientReport.getTimestampMs(), client);
 | 
			
		||||
                            if (session != null) {
 | 
			
		||||
@@ -2155,7 +2264,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                            // Make sure, if we have a session for this client,
 | 
			
		||||
                            // it
 | 
			
		||||
                            // shows disconnected.
 | 
			
		||||
                            // update any service_metrics_collection_config that need update if the
 | 
			
		||||
                            // update any service_metrics_collection_config that
 | 
			
		||||
                            // need update if the
 | 
			
		||||
                            // disconnect occured during this window
 | 
			
		||||
                            if (client.hasMacAddress()) {
 | 
			
		||||
                                ClientSession session = clientServiceInterface.getSessionOrNull(customerId, equipmentId,
 | 
			
		||||
@@ -2193,9 +2303,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                            continue; // not connected
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    } catch (Exception e) {
 | 
			
		||||
                        LOG.debug("Unabled to update client {} session {}", client, e);
 | 
			
		||||
                        LOG.error("Unabled to update client {}", client, e);
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
@@ -2267,12 +2376,22 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
    void populateChannelInfoReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
 | 
			
		||||
            long equipmentId, long locationId, long profileId) {
 | 
			
		||||
 | 
			
		||||
        LOG.debug("populateChannelInfoReports for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
        LOG.info("populateChannelInfoReports for Customer {} Equipment {}", customerId, equipmentId);
 | 
			
		||||
 | 
			
		||||
        ProfileContainer profileContainer = new ProfileContainer(
 | 
			
		||||
                profileServiceInterface.getProfileWithChildren(profileId));
 | 
			
		||||
        RfConfiguration rfConfig = (RfConfiguration) profileContainer.getChildOfTypeOrNull(profileId, ProfileType.rf)
 | 
			
		||||
        
 | 
			
		||||
        Profile rfProfile = profileContainer.getChildOfTypeOrNull(profileId, ProfileType.rf);
 | 
			
		||||
        RfConfiguration rfConfig = null;
 | 
			
		||||
        if (rfProfile != null) {
 | 
			
		||||
         rfConfig = (RfConfiguration) profileContainer.getChildOfTypeOrNull(profileId, ProfileType.rf)
 | 
			
		||||
                .getDetails();
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        if (rfConfig == null) {
 | 
			
		||||
            LOG.warn("Cannot get RfConfiguration for customerId {} equipmentId {}", customerId,equipmentId);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        for (Survey survey : report.getSurveyList()) {
 | 
			
		||||
 | 
			
		||||
@@ -2327,7 +2446,6 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
                channelInfoReports.setChannelInformationReportsPerRadio(channelInfoMap);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            channelInfoReports.setChannelInformationReportsPerRadio(channelInfoMap);
 | 
			
		||||
            smr.setDetails(channelInfoReports);
 | 
			
		||||
            smr.setCreatedTimestamp(survey.getTimestampMs());
 | 
			
		||||
@@ -2337,10 +2455,8 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    int getNegativeSignedIntFrom8BitUnsigned(int unsignedValue) {
 | 
			
		||||
        byte b = (byte) Integer.parseInt(Integer.toHexString(unsignedValue), 16);
 | 
			
		||||
        return b;
 | 
			
		||||
 
 | 
			
		||||
@@ -88,7 +88,6 @@ import sts.OpensyncStats.Client;
 | 
			
		||||
import sts.OpensyncStats.ClientReport;
 | 
			
		||||
import sts.OpensyncStats.EventReport;
 | 
			
		||||
import sts.OpensyncStats.EventReport.ClientAssocEvent;
 | 
			
		||||
import sts.OpensyncStats.EventType;
 | 
			
		||||
import sts.OpensyncStats.RadioBandType;
 | 
			
		||||
import sts.OpensyncStats.Report;
 | 
			
		||||
 | 
			
		||||
@@ -162,20 +161,6 @@ public class OpensyncExternalIntegrationCloudTest {
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testGetCustomerEquipment() {
 | 
			
		||||
 | 
			
		||||
        Equipment equipment = new Equipment();
 | 
			
		||||
        equipment.setDetails(ApElementConfiguration.createWithDefaults());
 | 
			
		||||
 | 
			
		||||
        Mockito.when(
 | 
			
		||||
                equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122")))
 | 
			
		||||
                .thenReturn(equipment);
 | 
			
		||||
        assertNotNull(opensyncExternalIntegrationCloud.getCustomerEquipment("Test_Client_21P10C68818122"));
 | 
			
		||||
        assertNull(opensyncExternalIntegrationCloud.getCustomerEquipment("Test_Client_21P10C68818133"));
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testApConnected() {
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -39,10 +39,15 @@ import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
 | 
			
		||||
import com.telecominfraproject.wlan.customer.service.CustomerServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
 | 
			
		||||
import com.telecominfraproject.wlan.equipment.models.Equipment;
 | 
			
		||||
import com.telecominfraproject.wlan.firmware.FirmwareServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.location.service.LocationServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.external.integration.controller.OpensyncCloudGatewayController;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.ProfileContainer;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.ProfileType;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.rf.models.RfConfiguration;
 | 
			
		||||
import com.telecominfraproject.wlan.routing.RoutingServiceInterface;
 | 
			
		||||
import com.telecominfraproject.wlan.servicemetric.apnode.models.ApNodeMetrics;
 | 
			
		||||
import com.telecominfraproject.wlan.servicemetric.apnode.models.StateUpDownError;
 | 
			
		||||
@@ -53,17 +58,19 @@ import com.telecominfraproject.wlan.status.models.Status;
 | 
			
		||||
import com.telecominfraproject.wlan.status.models.StatusDataType;
 | 
			
		||||
 | 
			
		||||
import sts.OpensyncStats.AssocType;
 | 
			
		||||
import sts.OpensyncStats.ChannelSwitchReason;
 | 
			
		||||
import sts.OpensyncStats.Client;
 | 
			
		||||
import sts.OpensyncStats.ClientReport;
 | 
			
		||||
import sts.OpensyncStats.DNSProbeMetric;
 | 
			
		||||
import sts.OpensyncStats.EventReport;
 | 
			
		||||
import sts.OpensyncStats.EventReport.ChannelSwitchEvent;
 | 
			
		||||
import sts.OpensyncStats.EventReport.ClientAssocEvent;
 | 
			
		||||
import sts.OpensyncStats.NetworkProbe;
 | 
			
		||||
import sts.OpensyncStats.RADIUSMetrics;
 | 
			
		||||
import sts.OpensyncStats.RadioBandType;
 | 
			
		||||
import sts.OpensyncStats.Report;
 | 
			
		||||
import sts.OpensyncStats.StateUpDown;
 | 
			
		||||
import sts.OpensyncStats.VLANMetrics;
 | 
			
		||||
import sts.OpensyncStats.EventReport.ClientAssocEvent;
 | 
			
		||||
 | 
			
		||||
@RunWith(SpringRunner.class)
 | 
			
		||||
@ActiveProfiles(profiles = { "integration_test", })
 | 
			
		||||
@@ -164,6 +171,20 @@ public class OpensyncExternalIntegrationMqttMessageProcessorTest {
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testProcessMqttMessageStringReport() {
 | 
			
		||||
        Equipment equipment = new Equipment();
 | 
			
		||||
 | 
			
		||||
        equipment.setDetails(ApElementConfiguration.createWithDefaults());
 | 
			
		||||
        
 | 
			
		||||
        equipment.setId(1L);
 | 
			
		||||
 | 
			
		||||
        Mockito.when(
 | 
			
		||||
                equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122")))
 | 
			
		||||
                .thenReturn(equipment);
 | 
			
		||||
        
 | 
			
		||||
        equipment.setProfileId(0L);
 | 
			
		||||
        
 | 
			
		||||
        Mockito.when(equipmentServiceInterface.getOrNull(1L)).thenReturn(equipment);
 | 
			
		||||
        Mockito.when(equipmentServiceInterface.get(1L)).thenReturn(equipment);
 | 
			
		||||
 | 
			
		||||
        Report report = Report.newBuilder().setNodeID("21P10C68818122")
 | 
			
		||||
                .addAllClients(getOpensyncStatsClientReportsList())
 | 
			
		||||
@@ -341,8 +362,15 @@ public class OpensyncExternalIntegrationMqttMessageProcessorTest {
 | 
			
		||||
        clientSessionBuilder.addAllClientAssocEvent(clientAssocEventList);
 | 
			
		||||
        List<sts.OpensyncStats.EventReport.ClientSession> clientSessionList = new ArrayList<>();
 | 
			
		||||
        clientSessionList.add(clientSessionBuilder.build());
 | 
			
		||||
        
 | 
			
		||||
        sts.OpensyncStats.EventReport.ChannelSwitchEvent.Builder channelSwitchEventBuilder = sts.OpensyncStats.EventReport.ChannelSwitchEvent.getDefaultInstance().toBuilder();
 | 
			
		||||
        channelSwitchEventBuilder.setBand(RadioBandType.BAND5GL).setChannel(40).setReason(ChannelSwitchReason.high_interference).setTimestampMs(System.currentTimeMillis());
 | 
			
		||||
 | 
			
		||||
        List<ChannelSwitchEvent> channelSwitchEventList = new ArrayList<>();
 | 
			
		||||
        channelSwitchEventList.add(channelSwitchEventBuilder.build());
 | 
			
		||||
        
 | 
			
		||||
        eventReportBuilder.addAllClientSession(clientSessionList);
 | 
			
		||||
        eventReportBuilder.addAllChannelSwitch(channelSwitchEventList);
 | 
			
		||||
 | 
			
		||||
        eventReportList.add(eventReportBuilder.build());
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "model_type": "Equipment",
 | 
			
		||||
  "id": 51,
 | 
			
		||||
  "customerId": 2,
 | 
			
		||||
  "profileId": 5,
 | 
			
		||||
  "profileId": 12,
 | 
			
		||||
  "locationId": 8,
 | 
			
		||||
  "equipmentType": "AP",
 | 
			
		||||
  "inventoryId": "Test_Client_21P10C68818122",
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "ca",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -1,55 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 23,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "equipment_ap",
 | 
			
		||||
	"name": "ApProfile-3-radios-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "ApNetworkConfiguration",
 | 
			
		||||
		"networkConfigVersion": "AP-1",
 | 
			
		||||
		"equipmentType": "AP",
 | 
			
		||||
		"vlanNative": true,
 | 
			
		||||
		"vlan": 0,
 | 
			
		||||
		"ntpServer": {
 | 
			
		||||
			"model_type": "AutoOrManualString",
 | 
			
		||||
			"auto": true,
 | 
			
		||||
			"value": "pool.ntp.org"
 | 
			
		||||
		},
 | 
			
		||||
		"syslogRelay": null,
 | 
			
		||||
		"rtlsSettings": null,
 | 
			
		||||
		"syntheticClientEnabled": true,
 | 
			
		||||
		"ledControlEnabled": true,
 | 
			
		||||
		"equipmentDiscovery": false,
 | 
			
		||||
		"greTunnelName": null,
 | 
			
		||||
		"greParentIfName": null,
 | 
			
		||||
		"greLocalInetAddr": null,
 | 
			
		||||
		"greRemoteInetAddr": null,
 | 
			
		||||
		"greRemoteMacAddr": null,
 | 
			
		||||
		"radioMap": {
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "equipment_ap"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711197140,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711197140,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
		16,
 | 
			
		||||
		21,
 | 
			
		||||
		22,
 | 
			
		||||
		15
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 12,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "equipment_ap",
 | 
			
		||||
    "name": "ApProfile-3-radios",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "ApNetworkConfiguration",
 | 
			
		||||
        "networkConfigVersion": "AP-1",
 | 
			
		||||
        "equipmentType": "AP",
 | 
			
		||||
        "vlanNative": true,
 | 
			
		||||
        "vlan": 0,
 | 
			
		||||
        "ntpServer": {
 | 
			
		||||
            "model_type": "AutoOrManualString",
 | 
			
		||||
            "auto": true,
 | 
			
		||||
            "value": "pool.ntp.org"
 | 
			
		||||
        },
 | 
			
		||||
        "syslogRelay": null,
 | 
			
		||||
        "rtlsSettings": null,
 | 
			
		||||
        "syntheticClientEnabled": true,
 | 
			
		||||
        "ledControlEnabled": true,
 | 
			
		||||
        "equipmentDiscovery": false,
 | 
			
		||||
        "greTunnelName": null,
 | 
			
		||||
        "greParentIfName": null,
 | 
			
		||||
        "greLocalInetAddr": null,
 | 
			
		||||
        "greRemoteInetAddr": null,
 | 
			
		||||
        "greRemoteMacAddr": null,
 | 
			
		||||
        "radioMap": {
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "equipment_ap"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369934,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778443413,
 | 
			
		||||
    "childProfileIds": [
 | 
			
		||||
        16,
 | 
			
		||||
        5,
 | 
			
		||||
        10,
 | 
			
		||||
        11,
 | 
			
		||||
        15
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
@@ -1,72 +1,71 @@
 | 
			
		||||
[
 | 
			
		||||
{
 | 
			
		||||
        "model_type": "Profile",
 | 
			
		||||
        "id": 24,
 | 
			
		||||
        "customerId": 2,
 | 
			
		||||
        "profileType": "passpoint",
 | 
			
		||||
        "name": "TipWlan-Hotspot20-Config",
 | 
			
		||||
        "details": {
 | 
			
		||||
            "model_type": "PasspointProfile",
 | 
			
		||||
            "enableInterworkingAndHs20": true,
 | 
			
		||||
            "hessid": null,
 | 
			
		||||
            "additionalStepsRequiredForAccess": 0,
 | 
			
		||||
            "deauthRequestTimeout": 0,
 | 
			
		||||
            "operatingClass": 0,
 | 
			
		||||
            "termsAndConditionsFile": {
 | 
			
		||||
                "model_type": "ManagedFileInfo",
 | 
			
		||||
                "md5checksum": null,
 | 
			
		||||
                "lastModifiedTimestamp": null,
 | 
			
		||||
                "apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
                "fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
                "fileType": "TEXT",
 | 
			
		||||
                "altSlot": false
 | 
			
		||||
            },
 | 
			
		||||
            "whitelistDomain": null,
 | 
			
		||||
            "emergencyServicesReachable": true,
 | 
			
		||||
            "unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
            "internetConnectivity": true,
 | 
			
		||||
            "connectionCapabilitySet": [
 | 
			
		||||
                {
 | 
			
		||||
                    "model_type": "PasspointConnectionCapability",
 | 
			
		||||
                    "connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
                    "connectionCapabilitiesIpProtocol": "TCP",
 | 
			
		||||
                    "connectionCapabilitiesStatus": "open"
 | 
			
		||||
                }
 | 
			
		||||
            ],
 | 
			
		||||
            "ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
            "qosMapSetConfiguration": null,
 | 
			
		||||
            "apGeospatialLocation": null,
 | 
			
		||||
            "apCivicLocation": null,
 | 
			
		||||
            "apPublicLocationIdUri": null,
 | 
			
		||||
            "gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
            "anqpDomainId": 1234,
 | 
			
		||||
            "disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
            "enable2pt4GHz": true,
 | 
			
		||||
            "enable5GHz": true,
 | 
			
		||||
            "associatedAccessSsidNames": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "osuSsidName": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
            "operatorProfileName": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
            "venueProfileName": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
            "idProviderProfileNames": [
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider"
 | 
			
		||||
            ],
 | 
			
		||||
            "accessNetworkType": "free_public_network",
 | 
			
		||||
            "networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
            "associatedSsids": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "profileType": "passpoint"
 | 
			
		||||
        },
 | 
			
		||||
        "createdTimestamp": 1605711223339,
 | 
			
		||||
        "lastModifiedTimestamp": 1605711223339,
 | 
			
		||||
        "childProfileIds": [
 | 
			
		||||
            17,
 | 
			
		||||
            18,
 | 
			
		||||
            19,
 | 
			
		||||
            20
 | 
			
		||||
        ]
 | 
			
		||||
    }
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 24,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Config",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointProfile",
 | 
			
		||||
			"enableInterworkingAndHs20": true,
 | 
			
		||||
			"hessid": null,
 | 
			
		||||
			"passpointAccessNetworkType": "free_public_network",
 | 
			
		||||
			"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"additionalStepsRequiredForAccess": 0,
 | 
			
		||||
			"deauthRequestTimeout": 0,
 | 
			
		||||
			"operatingClass": 0,
 | 
			
		||||
			"termsAndConditionsFile": {
 | 
			
		||||
				"model_type": "ManagedFileInfo",
 | 
			
		||||
				"md5checksum": null,
 | 
			
		||||
				"lastModifiedTimestamp": null,
 | 
			
		||||
				"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
				"fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
				"fileType": "TEXT",
 | 
			
		||||
				"altSlot": false
 | 
			
		||||
			},
 | 
			
		||||
			"whitelistDomain": null,
 | 
			
		||||
			"emergencyServicesReachable": true,
 | 
			
		||||
			"unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
			"internetConnectivity": true,
 | 
			
		||||
			"connectionCapabilitySet": [
 | 
			
		||||
				{
 | 
			
		||||
					"model_type": "PasspointConnectionCapability",
 | 
			
		||||
					"connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
					"connectionCapabilitiesStatus": "open",
 | 
			
		||||
					"connectionCapabilitiesIpProtocol": "TCP"
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
			"qosMapSetConfiguration": null,
 | 
			
		||||
			"apGeospatialLocation": null,
 | 
			
		||||
			"apCivicLocation": null,
 | 
			
		||||
			"apPublicLocationIdUri": null,
 | 
			
		||||
			"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
			"anqpDomainId": 1234,
 | 
			
		||||
			"disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
			"enable2pt4GHz": true,
 | 
			
		||||
			"enable5GHz": true,
 | 
			
		||||
			"associatedAccessSsidProfileIds": [
 | 
			
		||||
				15
 | 
			
		||||
			],
 | 
			
		||||
			"osuSsidProfileId": 16,
 | 
			
		||||
			"passpointOperatorProfileId": 17,
 | 
			
		||||
			"passpointVenueProfileId": 18,
 | 
			
		||||
			"passpointOsuProviderProfileIds": [
 | 
			
		||||
				19,
 | 
			
		||||
				20
 | 
			
		||||
			],
 | 
			
		||||
			"accessNetworkType": "free_public_network",
 | 
			
		||||
			"networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"profileType": "passpoint"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778370807,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370807,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			17,
 | 
			
		||||
			18,
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 19,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "rogers.com",
 | 
			
		||||
@@ -128,8 +128,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165325,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165325,
 | 
			
		||||
		"createdTimestamp": 1606778370345,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370345,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
@@ -138,7 +138,7 @@
 | 
			
		||||
		"id": 20,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider-2",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "telus.com",
 | 
			
		||||
@@ -262,8 +262,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165330,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165330,
 | 
			
		||||
		"createdTimestamp": 1606778370351,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370351,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 22,
 | 
			
		||||
		"id": 10,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "service_metrics_collection_config",
 | 
			
		||||
		"name": "Metrics-Profile-Passpoint",
 | 
			
		||||
		"name": "Metrics-Profile-3-Radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "ServiceMetricsCollectionConfigProfile",
 | 
			
		||||
			"radioTypes": [
 | 
			
		||||
@@ -21,30 +21,6 @@
 | 
			
		||||
			],
 | 
			
		||||
			"metricConfigParameterMap": {
 | 
			
		||||
				"ApNode": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -69,18 +45,6 @@
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -92,9 +56,52 @@
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"ApSsid": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -108,13 +115,6 @@
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Client": [
 | 
			
		||||
@@ -144,12 +144,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -168,12 +168,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -192,41 +192,29 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Neighbour": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -251,18 +239,6 @@
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -286,13 +262,37 @@
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				]
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "service_metrics_collection_config"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711195528,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711195528,
 | 
			
		||||
		"createdTimestamp": 1606778369931,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369931,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 17,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_operator",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Operator",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOperatorProfile",
 | 
			
		||||
			"serverOnlyAuthenticatedL2EncryptionNetwork": false,
 | 
			
		||||
@@ -29,8 +29,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_operator"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164952,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164952,
 | 
			
		||||
		"createdTimestamp": 1606778369945,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369945,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,205 +1,204 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 21,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "rf",
 | 
			
		||||
	"name": "TipWlan-rf-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "RfConfiguration",
 | 
			
		||||
		"rfConfigMap": {
 | 
			
		||||
			"is5GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHz",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is2dot4GHz",
 | 
			
		||||
				"radioMode": "modeN",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is20MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 20,
 | 
			
		||||
					"minLoadFactor": 50
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzU",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzL",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "rf"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711191976,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711191976,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 11,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "rf",
 | 
			
		||||
    "name": "TipWlan-rf",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "RfConfiguration",
 | 
			
		||||
        "rfConfigMap": {
 | 
			
		||||
            "is5GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHz",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is2dot4GHz",
 | 
			
		||||
                "radioMode": "modeN",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is20MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 20,
 | 
			
		||||
                    "minLoadFactor": 50
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzU",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzL",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "rf"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369933,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778369933,
 | 
			
		||||
    "childProfileIds": []
 | 
			
		||||
}
 | 
			
		||||
@@ -1,13 +1,80 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 5,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-3-radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-3-radios",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is2dot4GHz",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
			],
 | 
			
		||||
			"ssidAdminState": "enabled",
 | 
			
		||||
			"secureMode": "wpa2OnlyPSK",
 | 
			
		||||
			"vlanId": 1,
 | 
			
		||||
			"keyStr": "openwifi",
 | 
			
		||||
			"broadcastSsid": "enabled",
 | 
			
		||||
			"keyRefresh": 0,
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
			"clientBandwidthLimitDown": 0,
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is2dot4GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"bonjourGatewayProfileId": null,
 | 
			
		||||
			"enable80211w": null,
 | 
			
		||||
			"wepConfig": null,
 | 
			
		||||
			"forwardMode": "BRIDGE",
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778369598,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369598,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 15,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
@@ -21,6 +88,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -28,7 +96,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -40,13 +108,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -59,8 +127,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164949,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711223372,
 | 
			
		||||
		"createdTimestamp": 1606778369943,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370811,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			24
 | 
			
		||||
		]
 | 
			
		||||
@@ -70,10 +138,10 @@
 | 
			
		||||
		"id": 16,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is2dot4GHz"
 | 
			
		||||
			],
 | 
			
		||||
@@ -86,6 +154,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -93,7 +162,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -105,13 +174,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -124,8 +193,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164950,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711171732,
 | 
			
		||||
		"createdTimestamp": 1606778369944,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370352,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 18,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_venue",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Venue",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointVenueProfile",
 | 
			
		||||
			"venueNameSet": [
 | 
			
		||||
@@ -28,15 +28,15 @@
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"venueTypeAssignment": {
 | 
			
		||||
				"model_type": "ProfileVenueTypeAssignment",
 | 
			
		||||
				"model_type": "PasspointVenueTypeAssignment",
 | 
			
		||||
				"venueDescription": "Research and Development Facility",
 | 
			
		||||
				"venueGroupId": 2,
 | 
			
		||||
				"venueTypeId": 8
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "passpoint_venue"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164956,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164956,
 | 
			
		||||
		"createdTimestamp": 1606778369950,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369950,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@
 | 
			
		||||
        <listEntry value="1"/>
 | 
			
		||||
    </listAttribute>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
 | 
			
		||||
    <listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "model_type": "Equipment",
 | 
			
		||||
  "id": 51,
 | 
			
		||||
  "customerId": 2,
 | 
			
		||||
  "profileId": 5,
 | 
			
		||||
  "profileId": 12,
 | 
			
		||||
  "locationId": 8,
 | 
			
		||||
  "equipmentType": "AP",
 | 
			
		||||
  "inventoryId": "Test_Client_21P10C68818122",
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "ca",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "usa",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -1,55 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 23,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "equipment_ap",
 | 
			
		||||
	"name": "ApProfile-3-radios-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "ApNetworkConfiguration",
 | 
			
		||||
		"networkConfigVersion": "AP-1",
 | 
			
		||||
		"equipmentType": "AP",
 | 
			
		||||
		"vlanNative": true,
 | 
			
		||||
		"vlan": 0,
 | 
			
		||||
		"ntpServer": {
 | 
			
		||||
			"model_type": "AutoOrManualString",
 | 
			
		||||
			"auto": true,
 | 
			
		||||
			"value": "pool.ntp.org"
 | 
			
		||||
		},
 | 
			
		||||
		"syslogRelay": null,
 | 
			
		||||
		"rtlsSettings": null,
 | 
			
		||||
		"syntheticClientEnabled": true,
 | 
			
		||||
		"ledControlEnabled": true,
 | 
			
		||||
		"equipmentDiscovery": false,
 | 
			
		||||
		"greTunnelName": null,
 | 
			
		||||
		"greParentIfName": null,
 | 
			
		||||
		"greLocalInetAddr": null,
 | 
			
		||||
		"greRemoteInetAddr": null,
 | 
			
		||||
		"greRemoteMacAddr": null,
 | 
			
		||||
		"radioMap": {
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "equipment_ap"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711197140,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711197140,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
		16,
 | 
			
		||||
		21,
 | 
			
		||||
		22,
 | 
			
		||||
		15
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 12,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "equipment_ap",
 | 
			
		||||
    "name": "ApProfile-3-radios",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "ApNetworkConfiguration",
 | 
			
		||||
        "networkConfigVersion": "AP-1",
 | 
			
		||||
        "equipmentType": "AP",
 | 
			
		||||
        "vlanNative": true,
 | 
			
		||||
        "vlan": 0,
 | 
			
		||||
        "ntpServer": {
 | 
			
		||||
            "model_type": "AutoOrManualString",
 | 
			
		||||
            "auto": true,
 | 
			
		||||
            "value": "pool.ntp.org"
 | 
			
		||||
        },
 | 
			
		||||
        "syslogRelay": null,
 | 
			
		||||
        "rtlsSettings": null,
 | 
			
		||||
        "syntheticClientEnabled": true,
 | 
			
		||||
        "ledControlEnabled": true,
 | 
			
		||||
        "equipmentDiscovery": false,
 | 
			
		||||
        "greTunnelName": null,
 | 
			
		||||
        "greParentIfName": null,
 | 
			
		||||
        "greLocalInetAddr": null,
 | 
			
		||||
        "greRemoteInetAddr": null,
 | 
			
		||||
        "greRemoteMacAddr": null,
 | 
			
		||||
        "radioMap": {
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "equipment_ap"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369934,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778443413,
 | 
			
		||||
    "childProfileIds": [
 | 
			
		||||
        16,
 | 
			
		||||
        5,
 | 
			
		||||
        10,
 | 
			
		||||
        11,
 | 
			
		||||
        15
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
@@ -1,72 +1,71 @@
 | 
			
		||||
[
 | 
			
		||||
{
 | 
			
		||||
        "model_type": "Profile",
 | 
			
		||||
        "id": 24,
 | 
			
		||||
        "customerId": 2,
 | 
			
		||||
        "profileType": "passpoint",
 | 
			
		||||
        "name": "TipWlan-Hotspot20-Config",
 | 
			
		||||
        "details": {
 | 
			
		||||
            "model_type": "PasspointProfile",
 | 
			
		||||
            "enableInterworkingAndHs20": true,
 | 
			
		||||
            "hessid": null,
 | 
			
		||||
            "additionalStepsRequiredForAccess": 0,
 | 
			
		||||
            "deauthRequestTimeout": 0,
 | 
			
		||||
            "operatingClass": 0,
 | 
			
		||||
            "termsAndConditionsFile": {
 | 
			
		||||
                "model_type": "ManagedFileInfo",
 | 
			
		||||
                "md5checksum": null,
 | 
			
		||||
                "lastModifiedTimestamp": null,
 | 
			
		||||
                "apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
                "fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
                "fileType": "TEXT",
 | 
			
		||||
                "altSlot": false
 | 
			
		||||
            },
 | 
			
		||||
            "whitelistDomain": null,
 | 
			
		||||
            "emergencyServicesReachable": true,
 | 
			
		||||
            "unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
            "internetConnectivity": true,
 | 
			
		||||
            "connectionCapabilitySet": [
 | 
			
		||||
                {
 | 
			
		||||
                    "model_type": "PasspointConnectionCapability",
 | 
			
		||||
                    "connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
                    "connectionCapabilitiesIpProtocol": "TCP",
 | 
			
		||||
                    "connectionCapabilitiesStatus": "open"
 | 
			
		||||
                }
 | 
			
		||||
            ],
 | 
			
		||||
            "ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
            "qosMapSetConfiguration": null,
 | 
			
		||||
            "apGeospatialLocation": null,
 | 
			
		||||
            "apCivicLocation": null,
 | 
			
		||||
            "apPublicLocationIdUri": null,
 | 
			
		||||
            "gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
            "anqpDomainId": 1234,
 | 
			
		||||
            "disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
            "enable2pt4GHz": true,
 | 
			
		||||
            "enable5GHz": true,
 | 
			
		||||
            "associatedAccessSsidNames": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "osuSsidName": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
            "operatorProfileName": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
            "venueProfileName": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
            "idProviderProfileNames": [
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider"
 | 
			
		||||
            ],
 | 
			
		||||
            "accessNetworkType": "free_public_network",
 | 
			
		||||
            "networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
            "associatedSsids": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "profileType": "passpoint"
 | 
			
		||||
        },
 | 
			
		||||
        "createdTimestamp": 1605711223339,
 | 
			
		||||
        "lastModifiedTimestamp": 1605711223339,
 | 
			
		||||
        "childProfileIds": [
 | 
			
		||||
            17,
 | 
			
		||||
            18,
 | 
			
		||||
            19,
 | 
			
		||||
            20
 | 
			
		||||
        ]
 | 
			
		||||
    }
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 24,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Config",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointProfile",
 | 
			
		||||
			"enableInterworkingAndHs20": true,
 | 
			
		||||
			"hessid": null,
 | 
			
		||||
			"passpointAccessNetworkType": "free_public_network",
 | 
			
		||||
			"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"additionalStepsRequiredForAccess": 0,
 | 
			
		||||
			"deauthRequestTimeout": 0,
 | 
			
		||||
			"operatingClass": 0,
 | 
			
		||||
			"termsAndConditionsFile": {
 | 
			
		||||
				"model_type": "ManagedFileInfo",
 | 
			
		||||
				"md5checksum": null,
 | 
			
		||||
				"lastModifiedTimestamp": null,
 | 
			
		||||
				"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
				"fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
				"fileType": "TEXT",
 | 
			
		||||
				"altSlot": false
 | 
			
		||||
			},
 | 
			
		||||
			"whitelistDomain": null,
 | 
			
		||||
			"emergencyServicesReachable": true,
 | 
			
		||||
			"unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
			"internetConnectivity": true,
 | 
			
		||||
			"connectionCapabilitySet": [
 | 
			
		||||
				{
 | 
			
		||||
					"model_type": "PasspointConnectionCapability",
 | 
			
		||||
					"connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
					"connectionCapabilitiesStatus": "open",
 | 
			
		||||
					"connectionCapabilitiesIpProtocol": "TCP"
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
			"qosMapSetConfiguration": null,
 | 
			
		||||
			"apGeospatialLocation": null,
 | 
			
		||||
			"apCivicLocation": null,
 | 
			
		||||
			"apPublicLocationIdUri": null,
 | 
			
		||||
			"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
			"anqpDomainId": 1234,
 | 
			
		||||
			"disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
			"enable2pt4GHz": true,
 | 
			
		||||
			"enable5GHz": true,
 | 
			
		||||
			"associatedAccessSsidProfileIds": [
 | 
			
		||||
				15
 | 
			
		||||
			],
 | 
			
		||||
			"osuSsidProfileId": 16,
 | 
			
		||||
			"passpointOperatorProfileId": 17,
 | 
			
		||||
			"passpointVenueProfileId": 18,
 | 
			
		||||
			"passpointOsuProviderProfileIds": [
 | 
			
		||||
				19,
 | 
			
		||||
				20
 | 
			
		||||
			],
 | 
			
		||||
			"accessNetworkType": "free_public_network",
 | 
			
		||||
			"networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"profileType": "passpoint"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778370807,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370807,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			17,
 | 
			
		||||
			18,
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 19,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "rogers.com",
 | 
			
		||||
@@ -128,8 +128,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165325,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165325,
 | 
			
		||||
		"createdTimestamp": 1606778370345,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370345,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
@@ -138,7 +138,7 @@
 | 
			
		||||
		"id": 20,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider-2",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "telus.com",
 | 
			
		||||
@@ -262,8 +262,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165330,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165330,
 | 
			
		||||
		"createdTimestamp": 1606778370351,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370351,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 22,
 | 
			
		||||
		"id": 10,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "service_metrics_collection_config",
 | 
			
		||||
		"name": "Metrics-Profile-Passpoint",
 | 
			
		||||
		"name": "Metrics-Profile-3-Radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "ServiceMetricsCollectionConfigProfile",
 | 
			
		||||
			"radioTypes": [
 | 
			
		||||
@@ -21,30 +21,6 @@
 | 
			
		||||
			],
 | 
			
		||||
			"metricConfigParameterMap": {
 | 
			
		||||
				"ApNode": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -69,18 +45,6 @@
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -92,9 +56,52 @@
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"ApSsid": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -108,13 +115,6 @@
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Client": [
 | 
			
		||||
@@ -144,12 +144,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -168,12 +168,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -192,41 +192,29 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Neighbour": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -251,18 +239,6 @@
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -286,13 +262,37 @@
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				]
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "service_metrics_collection_config"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711195528,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711195528,
 | 
			
		||||
		"createdTimestamp": 1606778369931,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369931,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 17,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_operator",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Operator",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOperatorProfile",
 | 
			
		||||
			"serverOnlyAuthenticatedL2EncryptionNetwork": false,
 | 
			
		||||
@@ -29,8 +29,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_operator"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164952,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164952,
 | 
			
		||||
		"createdTimestamp": 1606778369945,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369945,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,205 +1,204 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 21,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "rf",
 | 
			
		||||
	"name": "TipWlan-rf-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "RfConfiguration",
 | 
			
		||||
		"rfConfigMap": {
 | 
			
		||||
			"is5GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHz",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is2dot4GHz",
 | 
			
		||||
				"radioMode": "modeN",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is20MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 20,
 | 
			
		||||
					"minLoadFactor": 50
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzU",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzL",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "rf"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711191976,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711191976,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 11,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "rf",
 | 
			
		||||
    "name": "TipWlan-rf",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "RfConfiguration",
 | 
			
		||||
        "rfConfigMap": {
 | 
			
		||||
            "is5GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHz",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is2dot4GHz",
 | 
			
		||||
                "radioMode": "modeN",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is20MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 20,
 | 
			
		||||
                    "minLoadFactor": 50
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzU",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzL",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "rf"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369933,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778369933,
 | 
			
		||||
    "childProfileIds": []
 | 
			
		||||
}
 | 
			
		||||
@@ -1,13 +1,80 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 5,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-3-radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-3-radios",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is2dot4GHz",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
			],
 | 
			
		||||
			"ssidAdminState": "enabled",
 | 
			
		||||
			"secureMode": "wpa2OnlyPSK",
 | 
			
		||||
			"vlanId": 1,
 | 
			
		||||
			"keyStr": "openwifi",
 | 
			
		||||
			"broadcastSsid": "enabled",
 | 
			
		||||
			"keyRefresh": 0,
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
			"clientBandwidthLimitDown": 0,
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is2dot4GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"bonjourGatewayProfileId": null,
 | 
			
		||||
			"enable80211w": null,
 | 
			
		||||
			"wepConfig": null,
 | 
			
		||||
			"forwardMode": "BRIDGE",
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778369598,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369598,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 15,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
@@ -21,6 +88,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -28,7 +96,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -40,13 +108,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -59,8 +127,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164949,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711223372,
 | 
			
		||||
		"createdTimestamp": 1606778369943,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370811,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			24
 | 
			
		||||
		]
 | 
			
		||||
@@ -70,10 +138,10 @@
 | 
			
		||||
		"id": 16,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is2dot4GHz"
 | 
			
		||||
			],
 | 
			
		||||
@@ -86,6 +154,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -93,7 +162,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -105,13 +174,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -124,8 +193,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164950,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711171732,
 | 
			
		||||
		"createdTimestamp": 1606778369944,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370352,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 18,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_venue",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Venue",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointVenueProfile",
 | 
			
		||||
			"venueNameSet": [
 | 
			
		||||
@@ -28,15 +28,15 @@
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"venueTypeAssignment": {
 | 
			
		||||
				"model_type": "ProfileVenueTypeAssignment",
 | 
			
		||||
				"model_type": "PasspointVenueTypeAssignment",
 | 
			
		||||
				"venueDescription": "Research and Development Facility",
 | 
			
		||||
				"venueGroupId": 2,
 | 
			
		||||
				"venueTypeId": 8
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "passpoint_venue"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164956,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164956,
 | 
			
		||||
		"createdTimestamp": 1606778369950,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369950,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "model_type": "Equipment",
 | 
			
		||||
  "id": 51,
 | 
			
		||||
  "customerId": 2,
 | 
			
		||||
  "profileId": 5,
 | 
			
		||||
  "profileId": 12,
 | 
			
		||||
  "locationId": 8,
 | 
			
		||||
  "equipmentType": "AP",
 | 
			
		||||
  "inventoryId": "Test_Client_21P10C68818122",
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "ca",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "usa",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -1,55 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 23,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "equipment_ap",
 | 
			
		||||
	"name": "ApProfile-3-radios-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "ApNetworkConfiguration",
 | 
			
		||||
		"networkConfigVersion": "AP-1",
 | 
			
		||||
		"equipmentType": "AP",
 | 
			
		||||
		"vlanNative": true,
 | 
			
		||||
		"vlan": 0,
 | 
			
		||||
		"ntpServer": {
 | 
			
		||||
			"model_type": "AutoOrManualString",
 | 
			
		||||
			"auto": true,
 | 
			
		||||
			"value": "pool.ntp.org"
 | 
			
		||||
		},
 | 
			
		||||
		"syslogRelay": null,
 | 
			
		||||
		"rtlsSettings": null,
 | 
			
		||||
		"syntheticClientEnabled": true,
 | 
			
		||||
		"ledControlEnabled": true,
 | 
			
		||||
		"equipmentDiscovery": false,
 | 
			
		||||
		"greTunnelName": null,
 | 
			
		||||
		"greParentIfName": null,
 | 
			
		||||
		"greLocalInetAddr": null,
 | 
			
		||||
		"greRemoteInetAddr": null,
 | 
			
		||||
		"greRemoteMacAddr": null,
 | 
			
		||||
		"radioMap": {
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "equipment_ap"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711197140,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711197140,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
		16,
 | 
			
		||||
		21,
 | 
			
		||||
		22,
 | 
			
		||||
		15
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 12,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "equipment_ap",
 | 
			
		||||
    "name": "ApProfile-3-radios",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "ApNetworkConfiguration",
 | 
			
		||||
        "networkConfigVersion": "AP-1",
 | 
			
		||||
        "equipmentType": "AP",
 | 
			
		||||
        "vlanNative": true,
 | 
			
		||||
        "vlan": 0,
 | 
			
		||||
        "ntpServer": {
 | 
			
		||||
            "model_type": "AutoOrManualString",
 | 
			
		||||
            "auto": true,
 | 
			
		||||
            "value": "pool.ntp.org"
 | 
			
		||||
        },
 | 
			
		||||
        "syslogRelay": null,
 | 
			
		||||
        "rtlsSettings": null,
 | 
			
		||||
        "syntheticClientEnabled": true,
 | 
			
		||||
        "ledControlEnabled": true,
 | 
			
		||||
        "equipmentDiscovery": false,
 | 
			
		||||
        "greTunnelName": null,
 | 
			
		||||
        "greParentIfName": null,
 | 
			
		||||
        "greLocalInetAddr": null,
 | 
			
		||||
        "greRemoteInetAddr": null,
 | 
			
		||||
        "greRemoteMacAddr": null,
 | 
			
		||||
        "radioMap": {
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "equipment_ap"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369934,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778443413,
 | 
			
		||||
    "childProfileIds": [
 | 
			
		||||
        16,
 | 
			
		||||
        5,
 | 
			
		||||
        10,
 | 
			
		||||
        11,
 | 
			
		||||
        15
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
@@ -1,72 +1,71 @@
 | 
			
		||||
[
 | 
			
		||||
{
 | 
			
		||||
        "model_type": "Profile",
 | 
			
		||||
        "id": 24,
 | 
			
		||||
        "customerId": 2,
 | 
			
		||||
        "profileType": "passpoint",
 | 
			
		||||
        "name": "TipWlan-Hotspot20-Config",
 | 
			
		||||
        "details": {
 | 
			
		||||
            "model_type": "PasspointProfile",
 | 
			
		||||
            "enableInterworkingAndHs20": true,
 | 
			
		||||
            "hessid": null,
 | 
			
		||||
            "additionalStepsRequiredForAccess": 0,
 | 
			
		||||
            "deauthRequestTimeout": 0,
 | 
			
		||||
            "operatingClass": 0,
 | 
			
		||||
            "termsAndConditionsFile": {
 | 
			
		||||
                "model_type": "ManagedFileInfo",
 | 
			
		||||
                "md5checksum": null,
 | 
			
		||||
                "lastModifiedTimestamp": null,
 | 
			
		||||
                "apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
                "fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
                "fileType": "TEXT",
 | 
			
		||||
                "altSlot": false
 | 
			
		||||
            },
 | 
			
		||||
            "whitelistDomain": null,
 | 
			
		||||
            "emergencyServicesReachable": true,
 | 
			
		||||
            "unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
            "internetConnectivity": true,
 | 
			
		||||
            "connectionCapabilitySet": [
 | 
			
		||||
                {
 | 
			
		||||
                    "model_type": "PasspointConnectionCapability",
 | 
			
		||||
                    "connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
                    "connectionCapabilitiesIpProtocol": "TCP",
 | 
			
		||||
                    "connectionCapabilitiesStatus": "open"
 | 
			
		||||
                }
 | 
			
		||||
            ],
 | 
			
		||||
            "ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
            "qosMapSetConfiguration": null,
 | 
			
		||||
            "apGeospatialLocation": null,
 | 
			
		||||
            "apCivicLocation": null,
 | 
			
		||||
            "apPublicLocationIdUri": null,
 | 
			
		||||
            "gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
            "anqpDomainId": 1234,
 | 
			
		||||
            "disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
            "enable2pt4GHz": true,
 | 
			
		||||
            "enable5GHz": true,
 | 
			
		||||
            "associatedAccessSsidNames": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "osuSsidName": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
            "operatorProfileName": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
            "venueProfileName": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
            "idProviderProfileNames": [
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider"
 | 
			
		||||
            ],
 | 
			
		||||
            "accessNetworkType": "free_public_network",
 | 
			
		||||
            "networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
            "associatedSsids": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "profileType": "passpoint"
 | 
			
		||||
        },
 | 
			
		||||
        "createdTimestamp": 1605711223339,
 | 
			
		||||
        "lastModifiedTimestamp": 1605711223339,
 | 
			
		||||
        "childProfileIds": [
 | 
			
		||||
            17,
 | 
			
		||||
            18,
 | 
			
		||||
            19,
 | 
			
		||||
            20
 | 
			
		||||
        ]
 | 
			
		||||
    }
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 24,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Config",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointProfile",
 | 
			
		||||
			"enableInterworkingAndHs20": true,
 | 
			
		||||
			"hessid": null,
 | 
			
		||||
			"passpointAccessNetworkType": "free_public_network",
 | 
			
		||||
			"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"additionalStepsRequiredForAccess": 0,
 | 
			
		||||
			"deauthRequestTimeout": 0,
 | 
			
		||||
			"operatingClass": 0,
 | 
			
		||||
			"termsAndConditionsFile": {
 | 
			
		||||
				"model_type": "ManagedFileInfo",
 | 
			
		||||
				"md5checksum": null,
 | 
			
		||||
				"lastModifiedTimestamp": null,
 | 
			
		||||
				"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
				"fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
				"fileType": "TEXT",
 | 
			
		||||
				"altSlot": false
 | 
			
		||||
			},
 | 
			
		||||
			"whitelistDomain": null,
 | 
			
		||||
			"emergencyServicesReachable": true,
 | 
			
		||||
			"unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
			"internetConnectivity": true,
 | 
			
		||||
			"connectionCapabilitySet": [
 | 
			
		||||
				{
 | 
			
		||||
					"model_type": "PasspointConnectionCapability",
 | 
			
		||||
					"connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
					"connectionCapabilitiesStatus": "open",
 | 
			
		||||
					"connectionCapabilitiesIpProtocol": "TCP"
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
			"qosMapSetConfiguration": null,
 | 
			
		||||
			"apGeospatialLocation": null,
 | 
			
		||||
			"apCivicLocation": null,
 | 
			
		||||
			"apPublicLocationIdUri": null,
 | 
			
		||||
			"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
			"anqpDomainId": 1234,
 | 
			
		||||
			"disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
			"enable2pt4GHz": true,
 | 
			
		||||
			"enable5GHz": true,
 | 
			
		||||
			"associatedAccessSsidProfileIds": [
 | 
			
		||||
				15
 | 
			
		||||
			],
 | 
			
		||||
			"osuSsidProfileId": 16,
 | 
			
		||||
			"passpointOperatorProfileId": 17,
 | 
			
		||||
			"passpointVenueProfileId": 18,
 | 
			
		||||
			"passpointOsuProviderProfileIds": [
 | 
			
		||||
				19,
 | 
			
		||||
				20
 | 
			
		||||
			],
 | 
			
		||||
			"accessNetworkType": "free_public_network",
 | 
			
		||||
			"networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"profileType": "passpoint"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778370807,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370807,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			17,
 | 
			
		||||
			18,
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 19,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "rogers.com",
 | 
			
		||||
@@ -128,8 +128,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165325,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165325,
 | 
			
		||||
		"createdTimestamp": 1606778370345,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370345,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
@@ -138,7 +138,7 @@
 | 
			
		||||
		"id": 20,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider-2",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "telus.com",
 | 
			
		||||
@@ -262,8 +262,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165330,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165330,
 | 
			
		||||
		"createdTimestamp": 1606778370351,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370351,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 22,
 | 
			
		||||
		"id": 10,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "service_metrics_collection_config",
 | 
			
		||||
		"name": "Metrics-Profile-Passpoint",
 | 
			
		||||
		"name": "Metrics-Profile-3-Radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "ServiceMetricsCollectionConfigProfile",
 | 
			
		||||
			"radioTypes": [
 | 
			
		||||
@@ -21,30 +21,6 @@
 | 
			
		||||
			],
 | 
			
		||||
			"metricConfigParameterMap": {
 | 
			
		||||
				"ApNode": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -69,18 +45,6 @@
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -92,9 +56,52 @@
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"ApSsid": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -108,13 +115,6 @@
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Client": [
 | 
			
		||||
@@ -144,12 +144,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -168,12 +168,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -192,41 +192,29 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Neighbour": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -251,18 +239,6 @@
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -286,13 +262,37 @@
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				]
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "service_metrics_collection_config"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711195528,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711195528,
 | 
			
		||||
		"createdTimestamp": 1606778369931,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369931,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 17,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_operator",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Operator",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOperatorProfile",
 | 
			
		||||
			"serverOnlyAuthenticatedL2EncryptionNetwork": false,
 | 
			
		||||
@@ -29,8 +29,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_operator"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164952,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164952,
 | 
			
		||||
		"createdTimestamp": 1606778369945,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369945,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,205 +1,204 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 21,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "rf",
 | 
			
		||||
	"name": "TipWlan-rf-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "RfConfiguration",
 | 
			
		||||
		"rfConfigMap": {
 | 
			
		||||
			"is5GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHz",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is2dot4GHz",
 | 
			
		||||
				"radioMode": "modeN",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is20MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 20,
 | 
			
		||||
					"minLoadFactor": 50
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzU",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzL",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "rf"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711191976,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711191976,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 11,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "rf",
 | 
			
		||||
    "name": "TipWlan-rf",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "RfConfiguration",
 | 
			
		||||
        "rfConfigMap": {
 | 
			
		||||
            "is5GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHz",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is2dot4GHz",
 | 
			
		||||
                "radioMode": "modeN",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is20MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 20,
 | 
			
		||||
                    "minLoadFactor": 50
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzU",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzL",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "rf"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369933,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778369933,
 | 
			
		||||
    "childProfileIds": []
 | 
			
		||||
}
 | 
			
		||||
@@ -1,13 +1,80 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 5,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-3-radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-3-radios",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is2dot4GHz",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
			],
 | 
			
		||||
			"ssidAdminState": "enabled",
 | 
			
		||||
			"secureMode": "wpa2OnlyPSK",
 | 
			
		||||
			"vlanId": 1,
 | 
			
		||||
			"keyStr": "openwifi",
 | 
			
		||||
			"broadcastSsid": "enabled",
 | 
			
		||||
			"keyRefresh": 0,
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
			"clientBandwidthLimitDown": 0,
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is2dot4GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"bonjourGatewayProfileId": null,
 | 
			
		||||
			"enable80211w": null,
 | 
			
		||||
			"wepConfig": null,
 | 
			
		||||
			"forwardMode": "BRIDGE",
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778369598,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369598,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 15,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
@@ -21,6 +88,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -28,7 +96,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -40,13 +108,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -59,8 +127,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164949,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711223372,
 | 
			
		||||
		"createdTimestamp": 1606778369943,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370811,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			24
 | 
			
		||||
		]
 | 
			
		||||
@@ -70,10 +138,10 @@
 | 
			
		||||
		"id": 16,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is2dot4GHz"
 | 
			
		||||
			],
 | 
			
		||||
@@ -86,6 +154,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -93,7 +162,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -105,13 +174,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -124,8 +193,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164950,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711171732,
 | 
			
		||||
		"createdTimestamp": 1606778369944,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370352,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 18,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_venue",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Venue",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointVenueProfile",
 | 
			
		||||
			"venueNameSet": [
 | 
			
		||||
@@ -28,15 +28,15 @@
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"venueTypeAssignment": {
 | 
			
		||||
				"model_type": "ProfileVenueTypeAssignment",
 | 
			
		||||
				"model_type": "PasspointVenueTypeAssignment",
 | 
			
		||||
				"venueDescription": "Research and Development Facility",
 | 
			
		||||
				"venueGroupId": 2,
 | 
			
		||||
				"venueTypeId": 8
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "passpoint_venue"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164956,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164956,
 | 
			
		||||
		"createdTimestamp": 1606778369950,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369950,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "model_type": "Equipment",
 | 
			
		||||
  "id": 51,
 | 
			
		||||
  "customerId": 2,
 | 
			
		||||
  "profileId": 5,
 | 
			
		||||
  "profileId": 12,
 | 
			
		||||
  "locationId": 8,
 | 
			
		||||
  "equipmentType": "AP",
 | 
			
		||||
  "inventoryId": "Test_Client_21P10C68818122",
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "ca",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -10,55 +10,48 @@
 | 
			
		||||
    "countryCode" : "usa",
 | 
			
		||||
    "maintenanceWindow" : null,
 | 
			
		||||
    "rrmEnabled" : true,
 | 
			
		||||
    "dailyRebalancingDetails" : {
 | 
			
		||||
    "dailyActivityDetails" : {
 | 
			
		||||
      "SUNDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "MONDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "TUESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "WEDNESDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "THURSDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "FRIDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      },
 | 
			
		||||
      "SATURDAY" : {
 | 
			
		||||
        "model_type" : "LocationActivityDetails",
 | 
			
		||||
        "busyTime" : "13:30",
 | 
			
		||||
        "quietTime" : "3:30",
 | 
			
		||||
        "timezone" : "US/Eastern",
 | 
			
		||||
        "lastBusySnapshot" : 0
 | 
			
		||||
        "timezone" : "US/Eastern"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -1,55 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 23,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "equipment_ap",
 | 
			
		||||
	"name": "ApProfile-3-radios-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "ApNetworkConfiguration",
 | 
			
		||||
		"networkConfigVersion": "AP-1",
 | 
			
		||||
		"equipmentType": "AP",
 | 
			
		||||
		"vlanNative": true,
 | 
			
		||||
		"vlan": 0,
 | 
			
		||||
		"ntpServer": {
 | 
			
		||||
			"model_type": "AutoOrManualString",
 | 
			
		||||
			"auto": true,
 | 
			
		||||
			"value": "pool.ntp.org"
 | 
			
		||||
		},
 | 
			
		||||
		"syslogRelay": null,
 | 
			
		||||
		"rtlsSettings": null,
 | 
			
		||||
		"syntheticClientEnabled": true,
 | 
			
		||||
		"ledControlEnabled": true,
 | 
			
		||||
		"equipmentDiscovery": false,
 | 
			
		||||
		"greTunnelName": null,
 | 
			
		||||
		"greParentIfName": null,
 | 
			
		||||
		"greLocalInetAddr": null,
 | 
			
		||||
		"greRemoteInetAddr": null,
 | 
			
		||||
		"greRemoteMacAddr": null,
 | 
			
		||||
		"radioMap": {
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RadioProfileConfiguration",
 | 
			
		||||
				"bestApEnabled": true,
 | 
			
		||||
				"bestAPSteerType": "both"
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "equipment_ap"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711197140,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711197140,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
		16,
 | 
			
		||||
		21,
 | 
			
		||||
		22,
 | 
			
		||||
		15
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 12,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "equipment_ap",
 | 
			
		||||
    "name": "ApProfile-3-radios",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "ApNetworkConfiguration",
 | 
			
		||||
        "networkConfigVersion": "AP-1",
 | 
			
		||||
        "equipmentType": "AP",
 | 
			
		||||
        "vlanNative": true,
 | 
			
		||||
        "vlan": 0,
 | 
			
		||||
        "ntpServer": {
 | 
			
		||||
            "model_type": "AutoOrManualString",
 | 
			
		||||
            "auto": true,
 | 
			
		||||
            "value": "pool.ntp.org"
 | 
			
		||||
        },
 | 
			
		||||
        "syslogRelay": null,
 | 
			
		||||
        "rtlsSettings": null,
 | 
			
		||||
        "syntheticClientEnabled": true,
 | 
			
		||||
        "ledControlEnabled": true,
 | 
			
		||||
        "equipmentDiscovery": false,
 | 
			
		||||
        "greTunnelName": null,
 | 
			
		||||
        "greParentIfName": null,
 | 
			
		||||
        "greLocalInetAddr": null,
 | 
			
		||||
        "greRemoteInetAddr": null,
 | 
			
		||||
        "greRemoteMacAddr": null,
 | 
			
		||||
        "radioMap": {
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RadioProfileConfiguration",
 | 
			
		||||
                "bestApEnabled": true,
 | 
			
		||||
                "bestAPSteerType": "both"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "equipment_ap"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369934,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778443413,
 | 
			
		||||
    "childProfileIds": [
 | 
			
		||||
        16,
 | 
			
		||||
        5,
 | 
			
		||||
        10,
 | 
			
		||||
        11,
 | 
			
		||||
        15
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
@@ -1,72 +1,71 @@
 | 
			
		||||
[
 | 
			
		||||
{
 | 
			
		||||
        "model_type": "Profile",
 | 
			
		||||
        "id": 24,
 | 
			
		||||
        "customerId": 2,
 | 
			
		||||
        "profileType": "passpoint",
 | 
			
		||||
        "name": "TipWlan-Hotspot20-Config",
 | 
			
		||||
        "details": {
 | 
			
		||||
            "model_type": "PasspointProfile",
 | 
			
		||||
            "enableInterworkingAndHs20": true,
 | 
			
		||||
            "hessid": null,
 | 
			
		||||
            "additionalStepsRequiredForAccess": 0,
 | 
			
		||||
            "deauthRequestTimeout": 0,
 | 
			
		||||
            "operatingClass": 0,
 | 
			
		||||
            "termsAndConditionsFile": {
 | 
			
		||||
                "model_type": "ManagedFileInfo",
 | 
			
		||||
                "md5checksum": null,
 | 
			
		||||
                "lastModifiedTimestamp": null,
 | 
			
		||||
                "apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
                "fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
                "fileType": "TEXT",
 | 
			
		||||
                "altSlot": false
 | 
			
		||||
            },
 | 
			
		||||
            "whitelistDomain": null,
 | 
			
		||||
            "emergencyServicesReachable": true,
 | 
			
		||||
            "unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
            "internetConnectivity": true,
 | 
			
		||||
            "connectionCapabilitySet": [
 | 
			
		||||
                {
 | 
			
		||||
                    "model_type": "PasspointConnectionCapability",
 | 
			
		||||
                    "connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
                    "connectionCapabilitiesIpProtocol": "TCP",
 | 
			
		||||
                    "connectionCapabilitiesStatus": "open"
 | 
			
		||||
                }
 | 
			
		||||
            ],
 | 
			
		||||
            "ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
            "qosMapSetConfiguration": null,
 | 
			
		||||
            "apGeospatialLocation": null,
 | 
			
		||||
            "apCivicLocation": null,
 | 
			
		||||
            "apPublicLocationIdUri": null,
 | 
			
		||||
            "gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
            "anqpDomainId": 1234,
 | 
			
		||||
            "disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
            "enable2pt4GHz": true,
 | 
			
		||||
            "enable5GHz": true,
 | 
			
		||||
            "associatedAccessSsidNames": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "osuSsidName": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
            "operatorProfileName": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
            "venueProfileName": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
            "idProviderProfileNames": [
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider"
 | 
			
		||||
            ],
 | 
			
		||||
            "accessNetworkType": "free_public_network",
 | 
			
		||||
            "networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
            "associatedSsids": [
 | 
			
		||||
                "TipWlan-cloud-hotspot-access"
 | 
			
		||||
            ],
 | 
			
		||||
            "profileType": "passpoint"
 | 
			
		||||
        },
 | 
			
		||||
        "createdTimestamp": 1605711223339,
 | 
			
		||||
        "lastModifiedTimestamp": 1605711223339,
 | 
			
		||||
        "childProfileIds": [
 | 
			
		||||
            17,
 | 
			
		||||
            18,
 | 
			
		||||
            19,
 | 
			
		||||
            20
 | 
			
		||||
        ]
 | 
			
		||||
    }
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 24,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Config",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointProfile",
 | 
			
		||||
			"enableInterworkingAndHs20": true,
 | 
			
		||||
			"hessid": null,
 | 
			
		||||
			"passpointAccessNetworkType": "free_public_network",
 | 
			
		||||
			"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"additionalStepsRequiredForAccess": 0,
 | 
			
		||||
			"deauthRequestTimeout": 0,
 | 
			
		||||
			"operatingClass": 0,
 | 
			
		||||
			"termsAndConditionsFile": {
 | 
			
		||||
				"model_type": "ManagedFileInfo",
 | 
			
		||||
				"md5checksum": null,
 | 
			
		||||
				"lastModifiedTimestamp": null,
 | 
			
		||||
				"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
 | 
			
		||||
				"fileCategory": "ExternalPolicyConfiguration",
 | 
			
		||||
				"fileType": "TEXT",
 | 
			
		||||
				"altSlot": false
 | 
			
		||||
			},
 | 
			
		||||
			"whitelistDomain": null,
 | 
			
		||||
			"emergencyServicesReachable": true,
 | 
			
		||||
			"unauthenticatedEmergencyServiceAccessible": false,
 | 
			
		||||
			"internetConnectivity": true,
 | 
			
		||||
			"connectionCapabilitySet": [
 | 
			
		||||
				{
 | 
			
		||||
					"model_type": "PasspointConnectionCapability",
 | 
			
		||||
					"connectionCapabilitiesPortNumber": 8888,
 | 
			
		||||
					"connectionCapabilitiesStatus": "open",
 | 
			
		||||
					"connectionCapabilitiesIpProtocol": "TCP"
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"ipAddressTypeAvailability": "public_IPv4_address_available",
 | 
			
		||||
			"qosMapSetConfiguration": null,
 | 
			
		||||
			"apGeospatialLocation": null,
 | 
			
		||||
			"apCivicLocation": null,
 | 
			
		||||
			"apPublicLocationIdUri": null,
 | 
			
		||||
			"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
 | 
			
		||||
			"anqpDomainId": 1234,
 | 
			
		||||
			"disableDownstreamGroupAddressedForwarding": false,
 | 
			
		||||
			"enable2pt4GHz": true,
 | 
			
		||||
			"enable5GHz": true,
 | 
			
		||||
			"associatedAccessSsidProfileIds": [
 | 
			
		||||
				15
 | 
			
		||||
			],
 | 
			
		||||
			"osuSsidProfileId": 16,
 | 
			
		||||
			"passpointOperatorProfileId": 17,
 | 
			
		||||
			"passpointVenueProfileId": 18,
 | 
			
		||||
			"passpointOsuProviderProfileIds": [
 | 
			
		||||
				19,
 | 
			
		||||
				20
 | 
			
		||||
			],
 | 
			
		||||
			"accessNetworkType": "free_public_network",
 | 
			
		||||
			"networkAuthenticationType": "acceptance_of_terms_and_conditions",
 | 
			
		||||
			"profileType": "passpoint"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778370807,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370807,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			17,
 | 
			
		||||
			18,
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
]
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 19,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "rogers.com",
 | 
			
		||||
@@ -128,8 +128,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165325,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165325,
 | 
			
		||||
		"createdTimestamp": 1606778370345,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370345,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
@@ -138,7 +138,7 @@
 | 
			
		||||
		"id": 20,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_osu_id_provider",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-OSU-Provider-2",
 | 
			
		||||
		"name": "TipWlan-Passpoint-OSU-Provider-2",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOsuProviderProfile",
 | 
			
		||||
			"domainName": "telus.com",
 | 
			
		||||
@@ -262,8 +262,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_osu_id_provider"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711165330,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711165330,
 | 
			
		||||
		"createdTimestamp": 1606778370351,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370351,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 22,
 | 
			
		||||
		"id": 10,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "service_metrics_collection_config",
 | 
			
		||||
		"name": "Metrics-Profile-Passpoint",
 | 
			
		||||
		"name": "Metrics-Profile-3-Radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "ServiceMetricsCollectionConfigProfile",
 | 
			
		||||
			"radioTypes": [
 | 
			
		||||
@@ -21,30 +21,6 @@
 | 
			
		||||
			],
 | 
			
		||||
			"metricConfigParameterMap": {
 | 
			
		||||
				"ApNode": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -69,18 +45,6 @@
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -92,9 +56,52 @@
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "ApNode",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"ApSsid": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -108,13 +115,6 @@
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricRadioConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "ApSsid"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Client": [
 | 
			
		||||
@@ -144,12 +144,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -168,12 +168,12 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
@@ -192,41 +192,29 @@
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Channel",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				],
 | 
			
		||||
				"Neighbour": [
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -251,18 +239,6 @@
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
@@ -286,13 +262,37 @@
 | 
			
		||||
						"radioType": "is5GHzU",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 120,
 | 
			
		||||
						"channelSurveyType": "OFF_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is5GHzL",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						"model_type": "ServiceMetricSurveyConfigParameters",
 | 
			
		||||
						"samplingInterval": 30,
 | 
			
		||||
						"reportingIntervalSeconds": 60,
 | 
			
		||||
						"channelSurveyType": "ON_CHANNEL",
 | 
			
		||||
						"scanIntervalMillis": 0,
 | 
			
		||||
						"percentUtilizationThreshold": 10,
 | 
			
		||||
						"delayMillisecondsThreshold": 600,
 | 
			
		||||
						"radioType": "is2dot4GHz",
 | 
			
		||||
						"serviceMetricDataType": "Neighbour",
 | 
			
		||||
						"statsReportFormat": "RAW"
 | 
			
		||||
					}
 | 
			
		||||
				]
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "service_metrics_collection_config"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711195528,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711195528,
 | 
			
		||||
		"createdTimestamp": 1606778369931,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369931,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 17,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_operator",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Operator",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Operator",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointOperatorProfile",
 | 
			
		||||
			"serverOnlyAuthenticatedL2EncryptionNetwork": false,
 | 
			
		||||
@@ -29,8 +29,8 @@
 | 
			
		||||
			],
 | 
			
		||||
			"profileType": "passpoint_operator"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164952,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164952,
 | 
			
		||||
		"createdTimestamp": 1606778369945,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369945,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,205 +1,204 @@
 | 
			
		||||
{
 | 
			
		||||
	"model_type": "Profile",
 | 
			
		||||
	"id": 21,
 | 
			
		||||
	"customerId": 2,
 | 
			
		||||
	"profileType": "rf",
 | 
			
		||||
	"name": "TipWlan-rf-passpoint",
 | 
			
		||||
	"details": {
 | 
			
		||||
		"model_type": "RfConfiguration",
 | 
			
		||||
		"rfConfigMap": {
 | 
			
		||||
			"is5GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHz",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is2dot4GHz": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is2dot4GHz",
 | 
			
		||||
				"radioMode": "modeN",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is20MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 20,
 | 
			
		||||
					"minLoadFactor": 50
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzU": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzU",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"is5GHzL": {
 | 
			
		||||
				"model_type": "RfElementConfiguration",
 | 
			
		||||
				"radioType": "is5GHzL",
 | 
			
		||||
				"radioMode": "modeAC",
 | 
			
		||||
				"rf": "TipWlan-rf-passpoint",
 | 
			
		||||
				"beaconInterval": 100,
 | 
			
		||||
				"forceScanDuringVoice": "disabled",
 | 
			
		||||
				"rtsCtsThreshold": 65535,
 | 
			
		||||
				"channelBandwidth": "is80MHz",
 | 
			
		||||
				"mimoMode": "twoByTwo",
 | 
			
		||||
				"maxNumClients": 100,
 | 
			
		||||
				"autoChannelSelection": false,
 | 
			
		||||
				"activeScanSettings": {
 | 
			
		||||
					"model_type": "ActiveScanSettings",
 | 
			
		||||
					"enabled": true,
 | 
			
		||||
					"scanFrequencySeconds": 10,
 | 
			
		||||
					"scanDurationMillis": 65
 | 
			
		||||
				},
 | 
			
		||||
				"neighbouringListApConfig": {
 | 
			
		||||
					"model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
					"minSignal": -85,
 | 
			
		||||
					"maxAps": 25
 | 
			
		||||
				},
 | 
			
		||||
				"minAutoCellSize": -65,
 | 
			
		||||
				"perimeterDetectionEnabled": true,
 | 
			
		||||
				"channelHopSettings": {
 | 
			
		||||
					"model_type": "ChannelHopSettings",
 | 
			
		||||
					"noiseFloorThresholdInDB": -75,
 | 
			
		||||
					"noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
					"nonWifiThresholdInPercentage": 50,
 | 
			
		||||
					"nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
					"obssHopMode": "NON_WIFI"
 | 
			
		||||
				},
 | 
			
		||||
				"bestApEnabled": null,
 | 
			
		||||
				"multicastRate": "auto",
 | 
			
		||||
				"managementRate": "auto",
 | 
			
		||||
				"rxCellSizeDb": -90,
 | 
			
		||||
				"probeResponseThresholdDb": -90,
 | 
			
		||||
				"clientDisconnectThresholdDb": -90,
 | 
			
		||||
				"eirpTxPower": 18,
 | 
			
		||||
				"bestApSettings": {
 | 
			
		||||
					"model_type": "RadioBestApSettings",
 | 
			
		||||
					"mlComputed": true,
 | 
			
		||||
					"dropInSnrPercentage": 30,
 | 
			
		||||
					"minLoadFactor": 40
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		"profileType": "rf"
 | 
			
		||||
	},
 | 
			
		||||
	"createdTimestamp": 1605711191976,
 | 
			
		||||
	"lastModifiedTimestamp": 1605711191976,
 | 
			
		||||
	"childProfileIds": [
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
    "model_type": "Profile",
 | 
			
		||||
    "id": 11,
 | 
			
		||||
    "customerId": 2,
 | 
			
		||||
    "profileType": "rf",
 | 
			
		||||
    "name": "TipWlan-rf",
 | 
			
		||||
    "details": {
 | 
			
		||||
        "model_type": "RfConfiguration",
 | 
			
		||||
        "rfConfigMap": {
 | 
			
		||||
            "is5GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHz",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is2dot4GHz": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is2dot4GHz",
 | 
			
		||||
                "radioMode": "modeN",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is20MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 20,
 | 
			
		||||
                    "minLoadFactor": 50
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzU": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzU",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "is5GHzL": {
 | 
			
		||||
                "model_type": "RfElementConfiguration",
 | 
			
		||||
                "radioType": "is5GHzL",
 | 
			
		||||
                "radioMode": "modeAC",
 | 
			
		||||
                "rf": "TipWlan-rf",
 | 
			
		||||
                "beaconInterval": 100,
 | 
			
		||||
                "forceScanDuringVoice": "disabled",
 | 
			
		||||
                "rtsCtsThreshold": 65535,
 | 
			
		||||
                "channelBandwidth": "is80MHz",
 | 
			
		||||
                "mimoMode": "twoByTwo",
 | 
			
		||||
                "maxNumClients": 100,
 | 
			
		||||
                "autoChannelSelection": false,
 | 
			
		||||
                "activeScanSettings": {
 | 
			
		||||
                    "model_type": "ActiveScanSettings",
 | 
			
		||||
                    "enabled": true,
 | 
			
		||||
                    "scanFrequencySeconds": 10,
 | 
			
		||||
                    "scanDurationMillis": 65
 | 
			
		||||
                },
 | 
			
		||||
                "neighbouringListApConfig": {
 | 
			
		||||
                    "model_type": "NeighbouringAPListConfiguration",
 | 
			
		||||
                    "minSignal": -85,
 | 
			
		||||
                    "maxAps": 25
 | 
			
		||||
                },
 | 
			
		||||
                "minAutoCellSize": -65,
 | 
			
		||||
                "perimeterDetectionEnabled": true,
 | 
			
		||||
                "channelHopSettings": {
 | 
			
		||||
                    "model_type": "ChannelHopSettings",
 | 
			
		||||
                    "noiseFloorThresholdInDB": -75,
 | 
			
		||||
                    "noiseFloorThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "nonWifiThresholdInPercentage": 50,
 | 
			
		||||
                    "nonWifiThresholdTimeInSeconds": 180,
 | 
			
		||||
                    "obssHopMode": "NON_WIFI"
 | 
			
		||||
                },
 | 
			
		||||
                "bestApEnabled": null,
 | 
			
		||||
                "multicastRate": "auto",
 | 
			
		||||
                "managementRate": "auto",
 | 
			
		||||
                "rxCellSizeDb": -90,
 | 
			
		||||
                "probeResponseThresholdDb": -90,
 | 
			
		||||
                "clientDisconnectThresholdDb": -90,
 | 
			
		||||
                "eirpTxPower": 18,
 | 
			
		||||
                "bestApSettings": {
 | 
			
		||||
                    "model_type": "RadioBestApSettings",
 | 
			
		||||
                    "mlComputed": true,
 | 
			
		||||
                    "dropInSnrPercentage": 30,
 | 
			
		||||
                    "minLoadFactor": 40
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "profileType": "rf"
 | 
			
		||||
    },
 | 
			
		||||
    "createdTimestamp": 1606778369933,
 | 
			
		||||
    "lastModifiedTimestamp": 1606778369933,
 | 
			
		||||
    "childProfileIds": []
 | 
			
		||||
}
 | 
			
		||||
@@ -1,13 +1,80 @@
 | 
			
		||||
[
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 5,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-3-radios",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-3-radios",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is2dot4GHz",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
			],
 | 
			
		||||
			"ssidAdminState": "enabled",
 | 
			
		||||
			"secureMode": "wpa2OnlyPSK",
 | 
			
		||||
			"vlanId": 1,
 | 
			
		||||
			"keyStr": "openwifi",
 | 
			
		||||
			"broadcastSsid": "enabled",
 | 
			
		||||
			"keyRefresh": 0,
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
			"clientBandwidthLimitDown": 0,
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is2dot4GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			"bonjourGatewayProfileId": null,
 | 
			
		||||
			"enable80211w": null,
 | 
			
		||||
			"wepConfig": null,
 | 
			
		||||
			"forwardMode": "BRIDGE",
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1606778369598,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369598,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		"model_type": "Profile",
 | 
			
		||||
		"id": 15,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-access",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-access",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is5GHzL",
 | 
			
		||||
				"is5GHzU"
 | 
			
		||||
@@ -21,6 +88,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -28,7 +96,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -40,13 +108,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -59,8 +127,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164949,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711223372,
 | 
			
		||||
		"createdTimestamp": 1606778369943,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370811,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			24
 | 
			
		||||
		]
 | 
			
		||||
@@ -70,10 +138,10 @@
 | 
			
		||||
		"id": 16,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "ssid",
 | 
			
		||||
		"name": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
		"name": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "SsidConfiguration",
 | 
			
		||||
			"ssid": "TipWlan-cloud-hotspot-osu",
 | 
			
		||||
			"ssid": "TipWlan-cloud-passpoint-osu",
 | 
			
		||||
			"appliedRadios": [
 | 
			
		||||
				"is2dot4GHz"
 | 
			
		||||
			],
 | 
			
		||||
@@ -86,6 +154,7 @@
 | 
			
		||||
			"noLocalSubnets": false,
 | 
			
		||||
			"radiusServiceName": null,
 | 
			
		||||
			"radiusAccountingServiceName": null,
 | 
			
		||||
			"radiusAcountingServiceInterval": null,
 | 
			
		||||
			"captivePortalId": null,
 | 
			
		||||
			"bandwidthLimitDown": 0,
 | 
			
		||||
			"bandwidthLimitUp": 0,
 | 
			
		||||
@@ -93,7 +162,7 @@
 | 
			
		||||
			"clientBandwidthLimitUp": 0,
 | 
			
		||||
			"videoTrafficOnly": false,
 | 
			
		||||
			"radioBasedConfigs": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -105,13 +174,13 @@
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
				"is5GHz": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
					"enable80211v": null
 | 
			
		||||
				},
 | 
			
		||||
				"is5GHzL": {
 | 
			
		||||
				"is5GHzU": {
 | 
			
		||||
					"model_type": "RadioBasedSsidConfiguration",
 | 
			
		||||
					"enable80211r": null,
 | 
			
		||||
					"enable80211k": null,
 | 
			
		||||
@@ -124,8 +193,8 @@
 | 
			
		||||
			"forwardMode": null,
 | 
			
		||||
			"profileType": "ssid"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164950,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711171732,
 | 
			
		||||
		"createdTimestamp": 1606778369944,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778370352,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
			19,
 | 
			
		||||
			20
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
		"id": 18,
 | 
			
		||||
		"customerId": 2,
 | 
			
		||||
		"profileType": "passpoint_venue",
 | 
			
		||||
		"name": "TipWlan-Hotspot20-Venue",
 | 
			
		||||
		"name": "TipWlan-Passpoint-Venue",
 | 
			
		||||
		"details": {
 | 
			
		||||
			"model_type": "PasspointVenueProfile",
 | 
			
		||||
			"venueNameSet": [
 | 
			
		||||
@@ -28,15 +28,15 @@
 | 
			
		||||
				}
 | 
			
		||||
			],
 | 
			
		||||
			"venueTypeAssignment": {
 | 
			
		||||
				"model_type": "ProfileVenueTypeAssignment",
 | 
			
		||||
				"model_type": "PasspointVenueTypeAssignment",
 | 
			
		||||
				"venueDescription": "Research and Development Facility",
 | 
			
		||||
				"venueGroupId": 2,
 | 
			
		||||
				"venueTypeId": 8
 | 
			
		||||
			},
 | 
			
		||||
			"profileType": "passpoint_venue"
 | 
			
		||||
		},
 | 
			
		||||
		"createdTimestamp": 1605711164956,
 | 
			
		||||
		"lastModifiedTimestamp": 1605711164956,
 | 
			
		||||
		"createdTimestamp": 1606778369950,
 | 
			
		||||
		"lastModifiedTimestamp": 1606778369950,
 | 
			
		||||
		"childProfileIds": [
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@
 | 
			
		||||
        <listEntry value="1"/>
 | 
			
		||||
    </listAttribute>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
 | 
			
		||||
    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
 | 
			
		||||
    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
 | 
			
		||||
 
 | 
			
		||||
@@ -30,7 +30,7 @@ import com.telecominfraproject.wlan.opensync.external.integration.models.Opensyn
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncAPVIFState;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncWifiAssociatedClients;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.ovsdb.dao.OvsdbDao;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities.OvsdbStringConstants;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.util.OvsdbStringConstants;
 | 
			
		||||
import com.telecominfraproject.wlan.opensync.util.SslUtil;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.network.models.ApNetworkConfiguration;
 | 
			
		||||
import com.vmware.ovsdb.callback.ConnectionCallback;
 | 
			
		||||
@@ -192,40 +192,38 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
        String apId = alterClientCnIfRequired(clientCn, connectNodeInfo);
 | 
			
		||||
 | 
			
		||||
        LOG.debug("Client {} connect for AP {}", clientCn, apId);
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
        ovsdbDao.removeAllPasspointConfigs(ovsdbClient);
 | 
			
		||||
        ovsdbDao.removeAllSsids(ovsdbClient); // always    
 | 
			
		||||
        ovsdbDao.removeAllInetConfigs(ovsdbClient);       
 | 
			
		||||
        ovsdbDao.removeWifiRrm(ovsdbClient);
 | 
			
		||||
        ovsdbDao.removeAllStatsConfigs(ovsdbClient); // always
 | 
			
		||||
        
 | 
			
		||||
        OpensyncAPConfig opensyncAPConfig = extIntegrationInterface.getApConfig(apId);
 | 
			
		||||
 | 
			
		||||
        if (opensyncAPConfig != null) {
 | 
			
		||||
            ovsdbDao.removeAllPasspointConfigs(ovsdbClient);
 | 
			
		||||
            ovsdbDao.removeAllStatsConfigs(ovsdbClient); // always
 | 
			
		||||
            ovsdbDao.removeAllSsids(ovsdbClient, opensyncAPConfig); // always
 | 
			
		||||
            ovsdbDao.removeWifiRrm(ovsdbClient);
 | 
			
		||||
            ovsdbDao.removeAllGreTunnels(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            
 | 
			
		||||
            ovsdbDao.configureWifiRadios(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            ovsdbDao.configureInterfaces(ovsdbClient);
 | 
			
		||||
            ovsdbDao.configureSsids(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            ovsdbDao.configureWifiRrm(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            ovsdbDao.configureGreTunnels(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            ovsdbDao.configureGreTunnels(ovsdbClient, opensyncAPConfig);       
 | 
			
		||||
            ovsdbDao.createVlanNetworkInterfaces(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            
 | 
			
		||||
            ovsdbDao.configureSsids(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            if (opensyncAPConfig.getHotspotConfig() != null) {
 | 
			
		||||
                ovsdbDao.configureHotspots(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            ovsdbDao.configureInterfaces(ovsdbClient);
 | 
			
		||||
 | 
			
		||||
            ovsdbDao.configureStatsFromProfile(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
            if (((ApNetworkConfiguration) opensyncAPConfig.getApProfile().getDetails()).getSyntheticClientEnabled()) {
 | 
			
		||||
                ovsdbDao.enableNetworkProbeForSyntheticClient(ovsdbClient);
 | 
			
		||||
            if (ovsdbDao.getDeviceStatsReportingInterval(ovsdbClient) != collectionIntervalSecDeviceStats) {
 | 
			
		||||
                ovsdbDao.updateDeviceStatsReportingInterval(ovsdbClient, collectionIntervalSecDeviceStats);
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
        } else {
 | 
			
		||||
            ovsdbDao.removeAllPasspointConfigs(ovsdbClient);
 | 
			
		||||
            ovsdbDao.removeAllStatsConfigs(ovsdbClient); // always
 | 
			
		||||
            ovsdbDao.removeAllSsids(ovsdbClient); // always
 | 
			
		||||
            ovsdbDao.removeWifiRrm(ovsdbClient);
 | 
			
		||||
            ovsdbDao.removeAllGreTunnels(ovsdbClient, null);
 | 
			
		||||
            LOG.info("No Configuration available for {}", apId);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (ovsdbDao.getDeviceStatsReportingInterval(ovsdbClient) != collectionIntervalSecDeviceStats) {
 | 
			
		||||
            ovsdbDao.updateDeviceStatsReportingInterval(ovsdbClient, collectionIntervalSecDeviceStats);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
        LOG.debug("Client connect Done");
 | 
			
		||||
        return connectNodeInfo;
 | 
			
		||||
    }
 | 
			
		||||
@@ -268,21 +266,25 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
            LOG.warn("AP with id " + apId + " does not have a config to apply.");
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
        ovsdbDao.removeAllPasspointConfigs(ovsdbClient);
 | 
			
		||||
        ovsdbDao.removeAllSsids(ovsdbClient, opensyncAPConfig); // always
 | 
			
		||||
        ovsdbDao.removeAllGreTunnels(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        ovsdbDao.removeAllSsids(ovsdbClient); // always    
 | 
			
		||||
        ovsdbDao.removeAllInetConfigs(ovsdbClient);       
 | 
			
		||||
        ovsdbDao.removeWifiRrm(ovsdbClient);
 | 
			
		||||
        ovsdbDao.removeAllStatsConfigs(ovsdbClient); // always
 | 
			
		||||
 | 
			
		||||
        ovsdbDao.configureWifiRadios(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        ovsdbDao.configureInterfaces(ovsdbClient);
 | 
			
		||||
        ovsdbDao.configureSsids(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        ovsdbDao.configureWifiRrm(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        ovsdbDao.configureGreTunnels(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        ovsdbDao.configureGreTunnels(ovsdbClient, opensyncAPConfig);       
 | 
			
		||||
        ovsdbDao.createVlanNetworkInterfaces(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        
 | 
			
		||||
        ovsdbDao.configureSsids(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        if (opensyncAPConfig.getHotspotConfig() != null) {
 | 
			
		||||
            ovsdbDao.configureHotspots(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        ovsdbDao.configureInterfaces(ovsdbClient);
 | 
			
		||||
 | 
			
		||||
        ovsdbDao.configureStatsFromProfile(ovsdbClient, opensyncAPConfig);
 | 
			
		||||
        if (ovsdbDao.getDeviceStatsReportingInterval(ovsdbClient) != collectionIntervalSecDeviceStats) {
 | 
			
		||||
            ovsdbDao.updateDeviceStatsReportingInterval(ovsdbClient, collectionIntervalSecDeviceStats);
 | 
			
		||||
@@ -372,62 +374,66 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.dhcpLeasedIpDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.dhcpLeasedIpDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        List<Map<String, String>> insert = new ArrayList<>();
 | 
			
		||||
                        List<Map<String, String>> delete = new ArrayList<>();
 | 
			
		||||
                        List<Map<String, String>> update = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> insert = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> delete = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> update = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                        for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                            for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                            for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                                for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                                if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                    if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    delete.add(rowMap);
 | 
			
		||||
                                    // delete
 | 
			
		||||
                                } else if (rowUpdate.getOld() == null) {
 | 
			
		||||
                                    // insert
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                        delete.add(rowMap);
 | 
			
		||||
                                        // delete
 | 
			
		||||
                                    } else if (rowUpdate.getOld() == null) {
 | 
			
		||||
                                        // insert
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getNew().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getNew().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    insert.add(rowMap);
 | 
			
		||||
                                } else {
 | 
			
		||||
                                        insert.add(rowMap);
 | 
			
		||||
                                    } else {
 | 
			
		||||
 | 
			
		||||
                                    // insert
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                        // insert
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().putAll(rowUpdate.getNew().getColumns());
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().putAll(rowUpdate.getNew().getColumns());
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            OvsdbDao.translateDhcpFpValueToString(c, rowMap);
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    update.add(rowMap);
 | 
			
		||||
                                        update.add(rowMap);
 | 
			
		||||
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        if (!insert.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.dhcpLeasedIpDbTableUpdate(insert, key, RowUpdateOperation.INSERT);
 | 
			
		||||
                        }
 | 
			
		||||
                            if (!insert.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.dhcpLeasedIpDbTableUpdate(insert, key, RowUpdateOperation.INSERT);
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                        if (!delete.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.dhcpLeasedIpDbTableUpdate(delete, key, RowUpdateOperation.DELETE);
 | 
			
		||||
                            if (!delete.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.dhcpLeasedIpDbTableUpdate(delete, key, RowUpdateOperation.DELETE);
 | 
			
		||||
 | 
			
		||||
                        }
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                        if (!update.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.dhcpLeasedIpDbTableUpdate(update, key, RowUpdateOperation.MODIFY);
 | 
			
		||||
                            if (!update.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.dhcpLeasedIpDbTableUpdate(update, key, RowUpdateOperation.MODIFY);
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("dhcpLeasedIpDbTableUpdate failed", e);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
@@ -447,62 +453,66 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.commandStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.commandStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        List<Map<String, String>> insert = new ArrayList<>();
 | 
			
		||||
                        List<Map<String, String>> delete = new ArrayList<>();
 | 
			
		||||
                        List<Map<String, String>> update = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> insert = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> delete = new ArrayList<>();
 | 
			
		||||
                            List<Map<String, String>> update = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                        for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                            for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                            for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                                for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                                if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                    if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    delete.add(rowMap);
 | 
			
		||||
                                    // delete
 | 
			
		||||
                                } else if (rowUpdate.getOld() == null) {
 | 
			
		||||
                                    // insert
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                        delete.add(rowMap);
 | 
			
		||||
                                        // delete
 | 
			
		||||
                                    } else if (rowUpdate.getOld() == null) {
 | 
			
		||||
                                        // insert
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getNew().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getNew().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    insert.add(rowMap);
 | 
			
		||||
                                } else {
 | 
			
		||||
                                        insert.add(rowMap);
 | 
			
		||||
                                    } else {
 | 
			
		||||
 | 
			
		||||
                                    // insert
 | 
			
		||||
                                    Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
                                        // insert
 | 
			
		||||
                                        Map<String, String> rowMap = new HashMap<>();
 | 
			
		||||
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().putAll(rowUpdate.getNew().getColumns());
 | 
			
		||||
                                    rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                        rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                    });
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().putAll(rowUpdate.getNew().getColumns());
 | 
			
		||||
                                        rowUpdate.getOld().getColumns().entrySet().stream().forEach(c -> {
 | 
			
		||||
                                            rowMap.put(c.getKey(), c.getValue().toString());
 | 
			
		||||
                                        });
 | 
			
		||||
 | 
			
		||||
                                    update.add(rowMap);
 | 
			
		||||
                                        update.add(rowMap);
 | 
			
		||||
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        if (!insert.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.commandStateDbTableUpdate(insert, key, RowUpdateOperation.INSERT);
 | 
			
		||||
                        }
 | 
			
		||||
                            if (!insert.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.commandStateDbTableUpdate(insert, key, RowUpdateOperation.INSERT);
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                        if (!delete.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.commandStateDbTableUpdate(delete, key, RowUpdateOperation.DELETE);
 | 
			
		||||
                            if (!delete.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.commandStateDbTableUpdate(delete, key, RowUpdateOperation.DELETE);
 | 
			
		||||
 | 
			
		||||
                        }
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                        if (!update.isEmpty()) {
 | 
			
		||||
                            extIntegrationInterface.commandStateDbTableUpdate(update, key, RowUpdateOperation.MODIFY);
 | 
			
		||||
                            if (!update.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.commandStateDbTableUpdate(update, key, RowUpdateOperation.MODIFY);
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("commandStateDbTableUpdate failed", e);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
@@ -521,10 +531,14 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.awlanNodeDbTable + "_" + key + " monitor callback received {}", tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.awlanNodeDbTable + "_" + key + " monitor callback received {}", tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        extIntegrationInterface.awlanNodeDbTableUpdate(
 | 
			
		||||
                                ovsdbDao.getOpensyncAWLANNode(tableUpdates, key, ovsdbClient), key);
 | 
			
		||||
                            extIntegrationInterface.awlanNodeDbTableUpdate(
 | 
			
		||||
                                    ovsdbDao.getOpensyncAWLANNode(tableUpdates, key, ovsdbClient), key);
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("awlanNodeDbTableUpdate failed",e);
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                });
 | 
			
		||||
@@ -542,32 +556,36 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
 | 
			
		||||
                        LOG.info(OvsdbDao.wifiAssociatedClientsDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.wifiAssociatedClientsDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        List<OpensyncWifiAssociatedClients> associatedClients = new ArrayList<>();
 | 
			
		||||
                            List<OpensyncWifiAssociatedClients> associatedClients = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                        for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                            for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                            for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                                if ((rowUpdate.getOld() != null) && (rowUpdate.getNew() == null)) {
 | 
			
		||||
                                    Row row = rowUpdate.getOld();
 | 
			
		||||
                                    String deletedClientMac = row.getStringColumn("mac");
 | 
			
		||||
                                    // take care of the deletes as we go through
 | 
			
		||||
                                    // the updates, as we want to delete before
 | 
			
		||||
                                    // adding anyway.
 | 
			
		||||
                                    extIntegrationInterface.wifiAssociatedClientsDbTableDelete(deletedClientMac, key);
 | 
			
		||||
                                } else {
 | 
			
		||||
                                    associatedClients.addAll(
 | 
			
		||||
                                            ovsdbDao.getOpensyncWifiAssociatedClients(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                                    if ((rowUpdate.getOld() != null) && (rowUpdate.getNew() == null)) {
 | 
			
		||||
                                        Row row = rowUpdate.getOld();
 | 
			
		||||
                                        String deletedClientMac = row.getStringColumn("mac");
 | 
			
		||||
                                        // take care of the deletes as we go through
 | 
			
		||||
                                        // the updates, as we want to delete before
 | 
			
		||||
                                        // adding anyway.
 | 
			
		||||
                                        extIntegrationInterface.wifiAssociatedClientsDbTableDelete(deletedClientMac, key);
 | 
			
		||||
                                    } else {
 | 
			
		||||
                                        associatedClients.addAll(
 | 
			
		||||
                                                ovsdbDao.getOpensyncWifiAssociatedClients(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                            // now address the update/add
 | 
			
		||||
                            extIntegrationInterface.wifiAssociatedClientsDbTableUpdate(associatedClients, key);
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                           LOG.error("wifiAssociatedClientsDbTableUpdate failed", e);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        // now address the update/add
 | 
			
		||||
                        extIntegrationInterface.wifiAssociatedClientsDbTableUpdate(associatedClients, key);
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                });
 | 
			
		||||
@@ -585,34 +603,38 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.ovsdbName,
 | 
			
		||||
                                OvsdbDao.wifiInetStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.ovsdbName,
 | 
			
		||||
                                    OvsdbDao.wifiInetStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        List<OpensyncAPInetState> inetStateInsertOrUpdate = new ArrayList<>();
 | 
			
		||||
                        List<OpensyncAPInetState> inetStateDelete = new ArrayList<>();
 | 
			
		||||
                            List<OpensyncAPInetState> inetStateInsertOrUpdate = new ArrayList<>();
 | 
			
		||||
                            List<OpensyncAPInetState> inetStateDelete = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                        for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                            for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                            for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                                for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                                    if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                        inetStateDelete.addAll(
 | 
			
		||||
                                                ovsdbDao.getOpensyncApInetStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                    } else {
 | 
			
		||||
                                        inetStateInsertOrUpdate.addAll(
 | 
			
		||||
                                                ovsdbDao.getOpensyncApInetStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                    }
 | 
			
		||||
 | 
			
		||||
                                if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                    inetStateDelete.addAll(
 | 
			
		||||
                                            ovsdbDao.getOpensyncApInetStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                } else {
 | 
			
		||||
                                    inetStateInsertOrUpdate.addAll(
 | 
			
		||||
                                            ovsdbDao.getOpensyncApInetStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                }
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                            // delete first
 | 
			
		||||
                            extIntegrationInterface.wifiInetStateDbTableUpdate(inetStateDelete, key);
 | 
			
		||||
 | 
			
		||||
                            // now process updates and mutations
 | 
			
		||||
                            extIntegrationInterface.wifiInetStateDbTableUpdate(inetStateInsertOrUpdate, key);
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("wifiInetStateDbTableUpdate failed",e);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        // delete first
 | 
			
		||||
                        extIntegrationInterface.wifiInetStateDbTableUpdate(inetStateDelete, key);
 | 
			
		||||
 | 
			
		||||
                        // now process updates and mutations
 | 
			
		||||
                        extIntegrationInterface.wifiInetStateDbTableUpdate(inetStateInsertOrUpdate, key);
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                });
 | 
			
		||||
@@ -629,11 +651,15 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.wifiRadioStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.wifiRadioStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        extIntegrationInterface.wifiRadioStatusDbTableUpdate(
 | 
			
		||||
                                ovsdbDao.getOpensyncAPRadioState(tableUpdates, key, ovsdbClient), key);
 | 
			
		||||
                            extIntegrationInterface.wifiRadioStatusDbTableUpdate(
 | 
			
		||||
                                    ovsdbDao.getOpensyncAPRadioState(tableUpdates, key, ovsdbClient), key);
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("wifiRadioStatusDbTableUpdate failed",e);
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                });
 | 
			
		||||
@@ -650,38 +676,42 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void update(TableUpdates tableUpdates) {
 | 
			
		||||
                        LOG.info(OvsdbDao.wifiVifStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                tableUpdates);
 | 
			
		||||
                        try {
 | 
			
		||||
                            LOG.info(OvsdbDao.wifiVifStateDbTable + "_" + key + " monitor callback received {}",
 | 
			
		||||
                                    tableUpdates);
 | 
			
		||||
 | 
			
		||||
                        List<OpensyncAPVIFState> vifsToDelete = new ArrayList<>();
 | 
			
		||||
                        List<OpensyncAPVIFState> vifsToInsertOrUpdate = new ArrayList<>();
 | 
			
		||||
                        for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
                            List<OpensyncAPVIFState> vifsToDelete = new ArrayList<>();
 | 
			
		||||
                            List<OpensyncAPVIFState> vifsToInsertOrUpdate = new ArrayList<>();
 | 
			
		||||
                            for (TableUpdate tableUpdate : tableUpdates.getTableUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                            for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
                                for (RowUpdate rowUpdate : tableUpdate.getRowUpdates().values()) {
 | 
			
		||||
 | 
			
		||||
                                if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                    // this is a deletion
 | 
			
		||||
                                    vifsToDelete.addAll(
 | 
			
		||||
                                            ovsdbDao.getOpensyncApVifStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                    if (rowUpdate.getNew() == null) {
 | 
			
		||||
                                        // this is a deletion
 | 
			
		||||
                                        vifsToDelete.addAll(
 | 
			
		||||
                                                ovsdbDao.getOpensyncApVifStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
 | 
			
		||||
                                } else {
 | 
			
		||||
                                    // either an insert or
 | 
			
		||||
                                    // mutuate/update
 | 
			
		||||
                                    vifsToInsertOrUpdate.addAll(
 | 
			
		||||
                                            ovsdbDao.getOpensyncApVifStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
                                    } else {
 | 
			
		||||
                                        // either an insert or
 | 
			
		||||
                                        // mutuate/update
 | 
			
		||||
                                        vifsToInsertOrUpdate.addAll(
 | 
			
		||||
                                                ovsdbDao.getOpensyncApVifStateForRowUpdate(rowUpdate, key, ovsdbClient));
 | 
			
		||||
 | 
			
		||||
                                    }
 | 
			
		||||
 | 
			
		||||
                                }
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
                                // delete first, if required
 | 
			
		||||
                                if (!vifsToDelete.isEmpty()) {
 | 
			
		||||
                                    extIntegrationInterface.wifiVIFStateDbTableDelete(vifsToDelete, key);
 | 
			
		||||
                                }
 | 
			
		||||
                                if (!vifsToInsertOrUpdate.isEmpty()) {
 | 
			
		||||
                                    extIntegrationInterface.wifiVIFStateDbTableUpdate(vifsToInsertOrUpdate, key);
 | 
			
		||||
                                }
 | 
			
		||||
 | 
			
		||||
                            // delete first, if required
 | 
			
		||||
                            if (!vifsToDelete.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.wifiVIFStateDbTableDelete(vifsToDelete, key);
 | 
			
		||||
                            }
 | 
			
		||||
                            if (!vifsToInsertOrUpdate.isEmpty()) {
 | 
			
		||||
                                extIntegrationInterface.wifiVIFStateDbTableUpdate(vifsToInsertOrUpdate, key);
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                        } catch (Exception e) {
 | 
			
		||||
                            LOG.error("wifiVIFStateDbTableUpdate failed", e);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
package com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities;
 | 
			
		||||
package com.telecominfraproject.wlan.opensync.util;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
public class OvsdbStringConstants {
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities;
 | 
			
		||||
package com.telecominfraproject.wlan.opensync.util;
 | 
			
		||||
 | 
			
		||||
import com.telecominfraproject.wlan.client.models.ClientType;
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
 | 
			
		||||
@@ -126,7 +126,7 @@ public class OpensyncGatewayTipWlanOvsdbClientTest {
 | 
			
		||||
        Mockito.verify(ovsdbSessionMapInterface).getSession("Test_Client_21P10C68818122");
 | 
			
		||||
        Mockito.verify(ovsdbSession).getOvsdbClient();
 | 
			
		||||
        Mockito.verify(opensyncExternalIntegrationInterface).getApConfig("Test_Client_21P10C68818122");
 | 
			
		||||
        Mockito.verify(ovsdbDao).removeAllSsids(ovsdbClient, apConfig);
 | 
			
		||||
        Mockito.verify(ovsdbDao).removeAllSsids(ovsdbClient);
 | 
			
		||||
        Mockito.verify(ovsdbDao).removeAllStatsConfigs(ovsdbClient);
 | 
			
		||||
        Mockito.verify(ovsdbDao).configureWifiRadios(ovsdbClient, apConfig);
 | 
			
		||||
        Mockito.verify(ovsdbDao).configureSsids(ovsdbClient, apConfig);
 | 
			
		||||
 
 | 
			
		||||
@@ -142,48 +142,6 @@ public class OvsdbDaoTest {
 | 
			
		||||
        mockito.finishMocking();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testRemoveAllGreTunnels() throws Exception {
 | 
			
		||||
        List<Row> rows = new ArrayList<>();
 | 
			
		||||
        OperationResult[] operationResult = new OperationResult[] { new SelectResult(rows) };
 | 
			
		||||
        Mockito.when(ovsdbClient.transact(Mockito.eq(OvsdbDao.ovsdbName), Mockito.anyList()))
 | 
			
		||||
                .thenReturn(selectionFutureResult);
 | 
			
		||||
        Mockito.when(selectionFutureResult.get(30, TimeUnit.SECONDS)).thenReturn(operationResult);
 | 
			
		||||
        Profile apProfile = new Profile();
 | 
			
		||||
        apProfile.setCustomerId(2);
 | 
			
		||||
        apProfile.setId(1L);
 | 
			
		||||
        apProfile.setName("ApProfile");
 | 
			
		||||
        apProfile.setProfileType(ProfileType.equipment_ap);
 | 
			
		||||
        ApNetworkConfiguration tunnelProfileDetails = ApNetworkConfiguration.createWithDefaults();
 | 
			
		||||
 | 
			
		||||
        tunnelProfileDetails.setGreLocalInetAddr(InetAddress.getByName("10.0.10.10"));
 | 
			
		||||
        tunnelProfileDetails.setGreRemoteInetAddr(InetAddress.getByName("192.168.0.10"));
 | 
			
		||||
        tunnelProfileDetails.setGreTunnelName("gre1");
 | 
			
		||||
        tunnelProfileDetails.setGreParentIfName("wan");
 | 
			
		||||
        apProfile.setDetails(tunnelProfileDetails);
 | 
			
		||||
        OpensyncAPConfig apConfig = Mockito.mock(OpensyncAPConfig.class);
 | 
			
		||||
        Mockito.when(apConfig.getApProfile()).thenReturn(apProfile);
 | 
			
		||||
        ovsdbDao.removeAllGreTunnels(ovsdbClient, apConfig);
 | 
			
		||||
 | 
			
		||||
        Mockito.verify(apConfig, Mockito.times(2)).getApProfile();
 | 
			
		||||
        Mockito.verify(ovsdbClient, Mockito.times(1)).transact(Mockito.eq(OvsdbDao.ovsdbName), Mockito.anyList());
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testRemoveAllGreTunnelsNoProfile() throws Exception {
 | 
			
		||||
        List<Row> rows = new ArrayList<>();
 | 
			
		||||
        OperationResult[] operationResult = new OperationResult[] { new SelectResult(rows) };
 | 
			
		||||
        Mockito.when(ovsdbClient.transact(Mockito.eq(OvsdbDao.ovsdbName), Mockito.anyList()))
 | 
			
		||||
                .thenReturn(selectionFutureResult);
 | 
			
		||||
        Mockito.when(selectionFutureResult.get(30, TimeUnit.SECONDS)).thenReturn(operationResult);
 | 
			
		||||
 | 
			
		||||
        ovsdbDao.removeAllGreTunnels(ovsdbClient, null);
 | 
			
		||||
 | 
			
		||||
        Mockito.verify(ovsdbClient, Mockito.times(1)).transact(Mockito.eq(OvsdbDao.ovsdbName), Mockito.anyList());
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testConfigureGreTunnels() throws Exception {
 | 
			
		||||
        List<Row> rows = new ArrayList<>();
 | 
			
		||||
@@ -262,7 +220,7 @@ public class OvsdbDaoTest {
 | 
			
		||||
        location.setName("Ottawa");
 | 
			
		||||
        apConfig.setEquipmentLocation(location);
 | 
			
		||||
        ovsdbDao.getRadiusAccountingConfiguration(apConfig, ssidConfig, security);
 | 
			
		||||
        assert (security.containsKey("radius_acct_interval") == false);
 | 
			
		||||
        assert (security.get("radius_acct_interval").equals("0"));
 | 
			
		||||
        assert (security.get("radius_acct_ip").equals("192.168.0.1"));
 | 
			
		||||
        assert (security.get("radius_acct_port").equals("1812"));
 | 
			
		||||
        assert (security.get("radius_acct_secret").equals("testing123"));
 | 
			
		||||
@@ -339,7 +297,7 @@ public class OvsdbDaoTest {
 | 
			
		||||
 | 
			
		||||
        ovsdbDao.configureHotspots(ovsdbClient, apConfig);
 | 
			
		||||
 | 
			
		||||
        Mockito.verify(futureResult, Mockito.times(11)).get(Mockito.anyLong(), Mockito.eq(TimeUnit.SECONDS));
 | 
			
		||||
        Mockito.verify(futureResult, Mockito.times(13)).get(Mockito.anyLong(), Mockito.eq(TimeUnit.SECONDS));
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,6 @@ import java.util.Set;
 | 
			
		||||
import java.util.UUID;
 | 
			
		||||
 | 
			
		||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
 | 
			
		||||
import com.telecominfraproject.wlan.customer.models.Customer;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.Profile;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.models.ProfileType;
 | 
			
		||||
import com.telecominfraproject.wlan.profile.network.models.ApNetworkConfiguration;
 | 
			
		||||
@@ -41,35 +40,37 @@ import com.vmware.ovsdb.protocol.operation.result.UpdateResult;
 | 
			
		||||
 | 
			
		||||
public class OvsdbDaoTestUtilities {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    // Static creation of Profiles and Results to use with the OvsdbDao JUnit tests.
 | 
			
		||||
    static void createPasspointHotspot(int customerId, Profile passpointHotspotConfig,
 | 
			
		||||
            Profile passpointOperatorProfile, Profile passpointVenueProfile, Profile hotspot20IdProviderProfile,
 | 
			
		||||
            Profile hotspot20IdProviderProfile2, Profile profileSsidPsk, Profile profileSsidOsu,
 | 
			
		||||
            Profile hotspotProfileAp) {
 | 
			
		||||
    // Static creation of Profiles and Results to use with the OvsdbDao JUnit
 | 
			
		||||
    // tests.
 | 
			
		||||
    static void createPasspointHotspot(int customerId, Profile passpointHotspotConfig, Profile passpointOperatorProfile,
 | 
			
		||||
            Profile passpointVenueProfile, Profile hotspot20IdProviderProfile, Profile hotspot20IdProviderProfile2,
 | 
			
		||||
            Profile profileSsidPsk, Profile profileSsidOsu, Profile hotspotProfileAp) {
 | 
			
		||||
 | 
			
		||||
        profileSsidPsk = createPasspointAccessSsid(customerId);
 | 
			
		||||
        profileSsidPsk.setId(1L);
 | 
			
		||||
        profileSsidOsu = createPasspointOsuSsid(customerId);
 | 
			
		||||
        profileSsidOsu.setId(2L);
 | 
			
		||||
 | 
			
		||||
        passpointOperatorProfile = createPasspointOperatorProfile(customerId);
 | 
			
		||||
 | 
			
		||||
        passpointOperatorProfile.setId(3L);
 | 
			
		||||
        passpointVenueProfile = createPasspointVenueProfile(customerId);
 | 
			
		||||
 | 
			
		||||
        passpointVenueProfile.setId(4L);
 | 
			
		||||
        hotspot20IdProviderProfile = createPasspointIdProviderProfile(customerId, hotspot20IdProviderProfile,
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider", "Rogers AT&T Wireless", "Canada", "ca", 302, 720, "rogers.com", 1);
 | 
			
		||||
 | 
			
		||||
        hotspot20IdProviderProfile.setId(5L);
 | 
			
		||||
        hotspot20IdProviderProfile2 = createPasspointIdProviderProfile(customerId, hotspot20IdProviderProfile2,
 | 
			
		||||
                "TipWlan-Hotspot20-OSU-Provider-2", "Telus Mobility", "Canada", "ca", 302, 220, "telus.com", 1);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        hotspot20IdProviderProfile2.setId(6L);
 | 
			
		||||
        profileSsidOsu.getChildProfileIds().add(hotspot20IdProviderProfile.getId());
 | 
			
		||||
        profileSsidOsu.getChildProfileIds().add(hotspot20IdProviderProfile2.getId());
 | 
			
		||||
 | 
			
		||||
        passpointHotspotConfig = createPasspointHotspotConfig(customerId, hotspot20IdProviderProfile2,
 | 
			
		||||
                hotspot20IdProviderProfile, passpointOperatorProfile, passpointVenueProfile, profileSsidPsk,
 | 
			
		||||
                profileSsidOsu);
 | 
			
		||||
        passpointHotspotConfig.setId(7L);
 | 
			
		||||
 | 
			
		||||
        hotspotProfileAp = createPasspointApProfile(customerId, profileSsidPsk, profileSsidOsu);
 | 
			
		||||
        hotspotProfileAp.setId(8L);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    static Profile createPasspointHotspotConfig(int customerId, Profile hotspot20IdProviderProfile2,
 | 
			
		||||
@@ -87,15 +88,18 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
        passpointHotspotConfigChildIds.add(hotspot20IdProviderProfile2.getId());
 | 
			
		||||
        passpointHotspotConfig.setChildProfileIds(passpointHotspotConfigChildIds);
 | 
			
		||||
        passpointHotspotConfig.setDetails(PasspointProfile.createWithDefaults());
 | 
			
		||||
        Set<String> providerNames = new HashSet<>();
 | 
			
		||||
        providerNames.add(hotspot20IdProviderProfile.getName());
 | 
			
		||||
        providerNames.add(hotspot20IdProviderProfile2.getName());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails()).setIdProviderProfileNames(providerNames);
 | 
			
		||||
        Set<Long> providerIds = new HashSet<>();
 | 
			
		||||
        providerIds.add(hotspot20IdProviderProfile.getId());
 | 
			
		||||
        providerIds.add(hotspot20IdProviderProfile2.getId());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails()).setPasspointOsuProviderProfileIds(providerIds);
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails())
 | 
			
		||||
                .setOperatorProfileName(passpointOperatorProfile.getName());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails()).setVenueProfileName(passpointVenueProfile.getName());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails()).setOsuSsidName(profileSsidOpen.getName());
 | 
			
		||||
                .setPasspointOperatorProfileId(passpointOperatorProfile.getId());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails())
 | 
			
		||||
                .setPasspointVenueProfileId(passpointVenueProfile.getId());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails()).setOsuSsidProfileId(profileSsidOpen.getId());
 | 
			
		||||
        profileSsidPsk.getChildProfileIds().add(passpointHotspotConfig.getId());
 | 
			
		||||
        ((PasspointProfile) passpointHotspotConfig.getDetails())
 | 
			
		||||
                .setAssociatedAccessSsidProfileIds(List.of(profileSsidPsk.getId()));
 | 
			
		||||
        return passpointHotspotConfig;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -117,14 +121,13 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
        mccMncList.add(passpointMccMnc);
 | 
			
		||||
        Set<String> naiRealms = new HashSet<>();
 | 
			
		||||
        naiRealms.add(naiRealm);
 | 
			
		||||
        naiRealm.split(".");
 | 
			
		||||
        List<Byte> roamingOi = new ArrayList<>();
 | 
			
		||||
        roamingOi.add(Byte.valueOf("1"));
 | 
			
		||||
        roamingOi.add(Byte.valueOf("2"));
 | 
			
		||||
        roamingOi.add(Byte.valueOf("3"));
 | 
			
		||||
        roamingOi.add(Byte.valueOf("4"));
 | 
			
		||||
        hotspot20IdProviderProfile = createOsuProviderProfile(customerId, hotspot20IdProviderProfile, mccMncList,
 | 
			
		||||
                naiRealms, "https://example.com/osu/" + naiRealm.split(".com")[0], naiRealm.split(".com")[0], naiRealm,
 | 
			
		||||
                naiRealms, "https://example.com/osu/" + naiRealm.split("/.com")[0], naiRealm.split(".com")[0], naiRealm,
 | 
			
		||||
                roamingOi);
 | 
			
		||||
        return hotspot20IdProviderProfile;
 | 
			
		||||
    }
 | 
			
		||||
@@ -305,7 +308,8 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
        columns.put("network_auth_type", new Atom<>("00"));
 | 
			
		||||
        columns.put("operating_class", new Atom<>(0));
 | 
			
		||||
        columns.put("operator_friendly_name",
 | 
			
		||||
                com.vmware.ovsdb.protocol.operation.notation.Set.of(new Atom<>("eng:Default friendly passpoint_operator name"),
 | 
			
		||||
                com.vmware.ovsdb.protocol.operation.notation.Set.of(
 | 
			
		||||
                        new Atom<>("eng:Default friendly passpoint_operator name"),
 | 
			
		||||
                        new Atom<>("fra:Nom de l'opérateur convivial par défaut")));
 | 
			
		||||
        columns.put("operator_icons",
 | 
			
		||||
                com.vmware.ovsdb.protocol.operation.notation.Set.of(
 | 
			
		||||
@@ -322,8 +326,8 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
                com.vmware.ovsdb.protocol.operation.notation.Set.of(new Atom<>("11223344"), new Atom<>("234433")));
 | 
			
		||||
        columns.put("tos", new Atom<>("https://localhost:9091/filestore/termsAndConditions"));
 | 
			
		||||
        columns.put("venue_group_type", new Atom<>("2:8"));
 | 
			
		||||
        columns.put("venue_name", com.vmware.ovsdb.protocol.operation.notation.Set.of(new Atom<>("eng:Example passpoint_venue"),
 | 
			
		||||
                new Atom<>("fra:Exemple de lieu")));
 | 
			
		||||
        columns.put("venue_name", com.vmware.ovsdb.protocol.operation.notation.Set
 | 
			
		||||
                .of(new Atom<>("eng:Example passpoint_venue"), new Atom<>("fra:Exemple de lieu")));
 | 
			
		||||
        columns.put("venue_url", com.vmware.ovsdb.protocol.operation.notation.Set
 | 
			
		||||
                .of(new Atom<>("1:http://www.example.com/info-fra"), new Atom<>("2:http://www.example.com/info-eng")));
 | 
			
		||||
        columns.put("vif_config",
 | 
			
		||||
@@ -408,7 +412,6 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
        return operationResult;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    static OperationResult[] hs20IconRows() {
 | 
			
		||||
        List<Row> ret = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
@@ -514,12 +517,11 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
 | 
			
		||||
        SelectResult selectResult = new SelectResult(ret);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        OperationResult[] operationResult = new OperationResult[1];
 | 
			
		||||
        operationResult[0].equals(selectResult);
 | 
			
		||||
        return operationResult;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    static Profile createRadiusProfile(int customerId) {
 | 
			
		||||
        Profile profileRadius = new Profile();
 | 
			
		||||
        profileRadius.setCustomerId(customerId);
 | 
			
		||||
@@ -542,6 +544,5 @@ public class OvsdbDaoTestUtilities {
 | 
			
		||||
        profileRadius.setDetails(radiusDetails);
 | 
			
		||||
        return profileRadius;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user