This documentation is for WSO2 IoT Server 3.0.0. View the documentation for the latest release.
Due to a known issue do not use JDK1.8.0_151 with WSO2 products. Use JDK 1.8.0_144 until JDK 1.8.0_162-ea is released.
Advanced Device Search - IoT Server 3.0.0 - WSO2 Documentation
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

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:

  1. Navigate to the <EMM_HOME>/repository/conf/cdm-config.xml file.

  2. 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 <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>
  3. 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 EMM console, see Advanced search devices.

  4. 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. 

       Click here for more information on the DEVICE_DETAILS table properties
      • DEVICE_MODEL

      • VENDOR

      • OS_VERSION

      • BATTERY_LEVEL

      • INTERNAL_TOTAL_MEMORY

      • INTERNAL_AVAILABLE_MEMORY

      • EXTERNAL_TOTAL_MEMORY

      • EXTERNAL_AVAILABLE_MEMORY

      • CONNECTION_TYPE

      • SSID

      • CPU_USAGE

      • TOTAL_RAM_MEMORY

      • AVAILABLE_RAM_MEMORY

      • PLUGGED_IN

    • If the value you defined for the Key field is not a property in the D EVICE_DETAILS table, it will then form a key:value pair and pass the details to the D EVICE_INFO database table in WSO2 EMM.
  5. Once WSO2 EMM aggregates all the results for the given search query the final search result will be provided.
  • No labels