This section provides the details on how the advanced device search functions. WSO2 EMM maintains the details of the devices that are enrolled with it by running a background task. This task adds a few operations to the devices such as the device_info
, device_location
and the application_list
. If you want to you can add more device operations and execute the advanced search as explained below:
Navigate to the
<EMM_HOME>/repository/conf/cdm-config.xml
file.Add the new operations under the task configurations operations tag as shown below:
<TaskConfiguration> <Enable>true</Enable> <Frequency>600000</Frequency> <TaskClass>org.wso2.carbon.device.mgt.core.task.impl.DeviceDetailsRetrieverTask</TaskClass> <Operations> <Operation> <Name>{OPERATION_CODE}</Name> <RecurrentTimes>{HOW_OFTEN_THE_OPERATION_NEEDS_TO_BE_ADDED}</RecurrentTimes> </Operation> </Operations> </TaskConfiguration>
For more information on the available operation codes see below:
{list of operation codes}
- For
<RecurrentTimes>
define how often the above operation should be called when running the task operation
Example: If you define it as 5 that means the operation will be added to the task at every 5th run of the task.
Example:
<TaskConfiguration> <Enable>true</Enable> <Frequency>30000</Frequency> <TaskClass>org.wso2.carbon.device.mgt.core.task.impl.DeviceDetailsRetrieverTask</TaskClass> <Operations> <Operation> <Name>DEVICE_INFO</Name> <RecurrentTimes>1</RecurrentTimes> </Operation> <Operation> <Name>APPLICATION_LIST</Name> <RecurrentTimes>5</RecurrentTimes> </Operation> <Operation> <Name>DEVICE_LOCATION</Name> <RecurrentTimes>1</RecurrentTimes> </Operation> </Operations> </TaskConfiguration>
The user executes the advanced search for devices via the EMM console or the REST API.
- For more information on carrying out the advanced search via the REST API, see Advanced Search for Devices via the Console.
- For more information on carrying out the advanced search via the EMM console, see Advanced search devices.
- WSO2 EMM goes through the search request received via the EMM console or the REST API to check for the following details:
Checks if the values provided for Key field match the
D
EVICE_DETAILS
database table properties.- If the value you defined for the Key field is not a property in the
D
EVICE_DETAILS
table, it will then form akey:value
pair and pass the details to theD
EVICE_INFO
database table in WSO2 EMM.
- Once WSO2 EMM aggregates all the results for the given search query the final search result will be provided.