How to Add Third-Party
Application Support


You can customize the Applications menu in Console and the other NetSight applications to launch third-party applications and/or launch a web browser to display a web page, by editing the ThirdPartyMenu.xml file. You can also edit the ThirdPartyMenu.xml file to perform these functions from the device-level right-click menu. This allows you to run the application or launch a browser by right-clicking a device icon in the Console left-panel tree. You must restart the server before the modified version of the file is deployed to connecting clients.

Use these steps to edit the ThirdPartyMenu.xml file.

  1. On the NetSight server system, open the ThirdPartyMenu.xml file. This file located in the <install directory>\appdata\System\Shared directory.
  2. Edit the file by copying the sample menu list outside the comment tags, and then customizing the menu list to fit your needs. Each application that is added to the menu is defined by a menu element. Valid attributes for a menu element are:
    • id - a unique identifier for each menu item.
    • name - the text displayed for the menu item.
    • icon - an optional icon to identify the menu item. The icon graphic must be placed in the <install directory>\appdata\System\images directory.
    • type - the menu element can be one of two types:
      • application-menu - This menu item will be added to the Applications menu in Console and other NetSight applications.
      • device-menu - This menu item will be added to the device-level menu in Console only.
  3. A menu element may contain one or more application elements or a webpage element. An application element has the following valid attributes:
    • os - the name of the operating system (in lower case) on which the application will be executed. Only the application corresponding to the host operating system will be executed, so each menu may have multiple application elements to provide support for different operating systems.
    • name - a descriptive name for the application.
    • executable - The fully qualified path name of the executable that will be run when the menu option is selected. Path separators are OS dependent. This path is also client specific. If an executable is not in a location common to all clients, the client version of this file must be updated to the correct path. Otherwise the executable will not run on the client system.
    A webpage element has only the URL attribute, which is the URL of the webpage to launch in a browser.
  4. An application element may also contain multiple "arg" elements, which are arguments passed to the executable. There is only one valid "arg" attribute: "value." The value of the "value" attribute can be anything except for characters that are reserved by XML.
  5. The "device-menu" menu type also performs the following conversion on arguments included for each application. An "arg" element whose value is one of the following is automatically converted when the associated executable is run.
    • %IP => IP address of the currently selected device.
    • %SNMP => Maximum available credential for the System Profile mapping. If the device's System Profile is v1 or v2, this would pass the community name in the Profile that is from the highest Access Level's credential. For example, if the Profile only has a Read credential, it would pass that community name. If it has Read and Write credentials, it would pass the community name for the Write credential. If the device's System Profile is v3, this would pass the user and password parameters in the Profile that is from the highest credential.
      1. Auth Priv
           user=user name
           MD5=MD5 password or SHA1=SHA1 password
           DES=DES password
      2. AuthNoPriv
           user=user name
           MD5=MD5 password or SHA1=SHA1 password
           DES=NOT_SPECIFIED
      3. NoAuthNoPriv
           user=user name
           MD5=NOT_SPECIFIED
           DES=NOT_SPECIFIED
    • %CN => Community Name. This argument provides compatibility with previous releases of NetSight Console. It is equivalent to %SNMP, which should be used instead of %CN.
  6. When launching a webpage, the "device-menu" menu type performs the following additional conversions on the URL.
    • %DEVICEIP% = The IP address of the currently selected device.
    This might be used when the URL is for a page that is served by the device. For example, http://%DEVICEIP%/Admin.
  7. Restart the NetSight Server. When you restart the server, the modified version of the file is deployed to connecting clients and the applications will be available on the appropriate menus.

Sample Menu List

<menulist id="nsthirdpartymenu" name="NetSight Third Party">
    <menu id="textEditor" name="NetSight Text Editor" icon="atlas_icon.gif" type="device-menu">
            <application os="windows" name="Wordpad" executable="C:\Program Files\Windows\Accessories\wordpad.exe"/>
            <application os="linux" name="gedit" executable="/usr/bin/gedit"/>
    </menu>
    <menu id="Telnet" name="NetSight Telnet Window" icon="conlite16.gif" type="device-menu">
            <application os="windows" name="CMD" executable="C:\Windows\System32\cmd.exe">
                 <arg value="/K" />
                 <arg value="start" />
                 <arg value="telnet" />
                 <arg value="%IP" />
            </application>
            <application os="linux" name="NetSight Telnet Window" executable="/usr/bin/gnome-terminal">
                 <arg value="-x" />                
                 <arg value="telnet" />
                 <arg value="%IP" />
            </application>
    </menu>
    <menu id="textEditor" name="NetSight Text Editor" icon="atlas_icon.gif" type="application-menu">
            <application os="windows" name="Wordpad" executable="C:\Program Files\Windows\Accessories\wordpad.exe">
            <application os= "linux" name="gedit" executable="/usr/bin/gedit"/>
    </menu>
    <menu id="google" name="Google" icon="application_go.png" type="application-menu">
            <webpage url="http://www.google.com"/>
    </menu>
</menulist>
Top