Custom Topics

Custom topics allow you to use data collected by third-party applications for display in Live View. An SDK document and sample source code package is available from SOTI.

Note: In this example we add a custom topic to an existing view. To create a new view, see the Creating a View section.

To add a custom topic:

  1. From the main menu, select Live View.

    Select Live View from the main menu

  2. From the View dropdown at the top of the screen, select the Edit icon.

    Select the Edit icon for an existing view

    The Edit View - User panel displays.

    The Edit View panel

  3. Select the Edit Topics button. The Edit Topics panel displays.

    The Edit Topics panel

  4. Select the Add Custom Topic/Event button. The Add Custom Topic/Event Wizard panel displays.

    The Add Custom Topic/Event Wizard displays

  5. Select Next. The Add Custom Topic/Event Wizard panel expands.

    Select the type of value of the data collected from the third-party applications.

    Refer to the following table:

    Value Description
    Integer (arbitrary values) Numerical value.
    Integer (suitable for mapping to colors on icons) Numerical value for display on the map.
    String (arbitrary value) Sequence of characters.
    String (suitable for mapping to colors on icons) Sequence of characters for display on the map.
    Event Uses XT Sock to capture events from third-party applications.
  6. Select Next.
  7. In the Add Custom Topic/Event Wizard panel, select the collection frequency, significant change, and units for the custom topic.

    Select the collection frequency, significant change, and units for the custom topic.

    Note: Collection Frequency sets how often the device sends topic data. Significant Change tells the device to send data when this condition occurs, regardless of the collection frequency.
  8. Select Next.
  9. In the Add Custom Topic/Event Wizard panel, select the method to use to retrieve topic values from third-party applications on the devices.

    Select the method to retrieve topic values from third-party apps

    Select the method to use to retrieve topic values from third-party applications on devices.

    Refer to the following table:
    Data Source Option Description
    Retrieve data from SOTI Snap App (Android only) Specify parameters to retrieve data using the SOTI XT Sock for SOTI Snap.

    Custom Topic Wizard SOTI Snap app integration screen

    See the SOTI Snap online help: XSight Topics

    • Display Prompt Text: Enter the topic name to display in Live View.
    • Topic Identifier: Enter a topic exported by SOTI Snap.
    Note: This option is only available for Android.
    Use XT Sock Interface Specify the parameters to retrieve data using the SOTI XT Sock interface, a mechanism developed by SOTI to talk directly to business apps.

    Custom Topic Wizard XT Sock screen
    • Display Prompt Text: Enter the topic name to display in Live View.
    • Package/Prog Id: The application you want to get data from.
    • Signature: The value for signature comes from your XT Sock signature. If you have the signature, you can enter it manually in the text box. Otherwise, select Get app signature to browse for your XT Sock *.apk or *.exe. By selecting your XT Sock you can extract the app signature automatically.
      Note: The Signature field is available in SOTI XSight 2024.0.3 and later.
    • XT Sock Field Key: Enter the name of the field you want to extract data from.
    Retrieve data from JSON file Specify the parameters to retrieve data from a JSON file on the device.

    Custom Topic Wizard JSON file integration screen
    • Display Prompt Text: Enter the topic name to display in Live View.
    • File Path: Enter the location of the JSON file on the device.
    • JSONPath: Enter the specific subsection of the JSON document you want to extract. Use the format: $.store.book[0].title
    Note: There are two styles of notation:
    • Dot Notation: Uses a dot (.) to separate nodes. For example: $.tool.jsonpath.creator.location[2].
    • The dollar sign ($) represents the root member object.
    • Use operators like @ (current node) and * (wildcard) in expressions.
    • You can apply functions like min(), max(), and length() at the end of a path.
  10. Select Finish.