Spectrum Analysis

This is a very important aspect of realizing the interferences that are affecting the wifi signals by non-wifi factors in the surrounding environment. Mojo Aware provides spectrum analysis by which you can actually improve your WiFi performance. It visualizes all the non-wifi factors that are affecting the radio frequency in an area and determines the strength of the signal. The analysis in the form of energies and spectrum of frequencies. Interestingly it is done in the entire lifecycle of WLAN- before, after and during the deployment of WLAN network. To note: Done only in tri-radio APs.

JSON Table

Attribute Data Type Description
nextSampleTimestamp int Time when next sample will be available
channelData application/json Analysis data for all the channels selected
channelData/channel int Channel no for which data is recorded
channelData/centerFrequency int Center Frequency of the current channel
channelData/channelWidth int Width of the channel
channelData/subChannelSignalStrength int Signal strengths observed for each of the sub-channel frequencies
in the current channel
timestamp int Time when the samples were observed

Copy Sample JSON
Sample JSON
[{
	"nextSampleTimestamp": 1480322317000,
	"samples": 
	[{
		"channelData": 
  	[{
			"channel": 184,
			"centerFrequency": 4920,
			"channelWidth": 20,
			"subChannelSignalStrength": [-128, -128, -128, -128, -123, -128, -128, -128, -128, -118, -128, -118, -128, -128, -126, -128, 
			                             -128, -128, -128, -123, -126, -128, -126, -128, -128, -120, -128, -128, -128, -128, -128, -126,
                                       -105, -128, -128, -128, -126, -128, -128, -123, -120, -128, -128, -128, -128, -128, -128, -128, 
                                       -128, -128, -120, -128, -126, -128, -123, -128, -128, -126, -128, -128, -128, -128, -128, -128]
  	}],
		"timestamp": 1480322274000
	}]
API Calls

/V5/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions/{sessionId}/data

/V5/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions

/V5/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions

/V5/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions/{sessionId}

Get Spectrum Analysis Data

Description Fetches spectrum analysis data for a session.
Who Can Execute? Superuser, Administrator, Operator, and Viewer.
Syntax
GET <Base_URL>/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions/
{sessionId}/data?modifiedsincetimestamp=<value>
  • macAddress

    MAC address of the managed device for which spectrum analysis data is to be retrieved. It takes a string value.

  • sessionId

    The ID of the spectrum analysis session for which data is to be retrieved. It takes Integer value.

  • modifiedsincetimestamp

    It is used to retrieve records after this time, typically it is the latest timestamp from last response.
    It takes Integer value. Default value is -1.

Sample code
GET https://training.mojonetworks.com/new/webservice/v5/devices/manageddevices
/00:11:74:88:AF:8F/spectrumanalysis/sessions/16/data?modifiedsincetimestamp=1490966767
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains spectrum analysis data for a session. The response
is in the application/json format.

Get Spectrum Analysis State

Description Fetches spectrum analysis session state.
Who Can Execute? Superuser, Administrator, Operator, and Viewer.
Syntax
GET <Base_URL>/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions
  • macAddress

    MAC address of the managed device for which spectrum analysis state is to be retrieved. It takes a string value.

Sample code
GET https://training.mojonetworks.com/new/webservice/V5/devices/manageddevices
/00:11:74:86:28:7F/spectrumanalysis/sessions
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains a spectrum analysis state for a session. The response
is in the application/json format.A sample response JSON is as follows:

{
    "sessionId": 5,
    "spectrumAnalysisState": "PENDING"
}

Start Spectrum Analysis

Description Starts a spectrum analysis session for a managed device.

Note: Spectrum analysis can be performed only on a tri-radio device.

Who Can Execute? Superuser, Administrator, and Operator.
Syntax
POST <Base_URL>/devices/managedDevices/{macAddress}/spectrumAnalysis/sessions?filter=<value>
  • macAddress

    MAC address of the device on which spectrum analysis must be started. It takes a String value.

  • filter

    It is used to apply filters. The value in the parameter is passed in the application/json format.
    Click Filter to view details of how filters need
    to be specified in the URL. For possible names of property attribute, datatype, applicable values
    and whether the results can be sorted based on the parameter click Spectrum Analysis Filters.

Sample code
POST https://training.mojonetworks.com/new/webservice/V5/devices/manageddevices
/00:11:74:86:28:7F/spectrumanalysis/sessions
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains a Session ID. The response is in the application/json format.
A sample response is as follows:

{
 "sessionId": 14
}

Stop Spectrum Analysis

Description Stops an active spectrum analysis session for a managed device.
Who Can Execute? Superuser, Administrator, and Operator.
Syntax
DELETE <Base_URL>/devices/manageddevices/{macaddress}/spectrumanalysis/
sessions/{sessionid}
  • macAddress

    MAC address of the managed device on which spectrum analysis must be stopped. It takes a string value.

  • sessionId

    Spectrum analysis session ID. It takes an integer value.

Sample code
DELETE https://training.mojonetworks.com/new/webservice/V5/devices/manageddevices
/00:11:74:86:28:7F/spectrumanalysis/sessions/121
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains Session ID for which the session has been stopped.
A sample response is as follows:

{
 "sessionId": 14
}