io.Manager

Overview

io.Connect Desktop projects can connect to io.Manager and use its functionalities.

io.Manager is a server-side app that provides data to io.Connect (apps, Layouts, preferences) and allows monitoring and interacting with users running io.Connect.

It also includes an Admin UI that facilitates managing the data stored in io.Manager.

For more details about io.Manager, see the io.Manager documentation.

Configuration

To configure io.Connect Desktop to connect to io.Manager, use the "server" top-level key of the system.json system configuration file of io.Connect Desktop located in the %LocalAppData%/interop.io/io.Connect Desktop/Desktop/config folder. Add the following basic configuration to enable connection to io.Manager:

{
    "server": {
        "enabled": true,
        "url": "http://localhost:4356/api"
    }
}

This will add io.Manager as an additional app store and instruct it to store Layouts and app preferences. If you want io.Manager to be the only app store, set the "appStores" top-level key in the system.json file to an empty array.

The "server" top-level key has the following properties:

Property Type Description
"cache" object Settings for persisting data received from io.Manager. Defaults to {}. Available since io.Connect Desktop 9.4.
"clientAuth" "no-auth" | "negotiate" | "kerberos" The client authentication mechanism for the REST service. Defaults to "no-auth".
"enabled" boolean If true, will enable connecting to io.Manager.
"features" object Features to be injected automatically in io.Connect Desktop.
"fetchInterval" number Interval in seconds at which the server will be polled for new data (apps, Layouts, commands). Defaults to 30.
"requests" object Settings for the requests sent to io.Manager. Defaults to {}. Available since io.Connect Desktop 9.4.
"startRetries" number Number of times io.Connect Desktop will try to reconnect to io.Manager. Defaults to 10.
"startRetryInterval" number Interval in seconds at which io.Connect Desktop will try to connect to io.Manager. Defaults to 10.
"tokenRefreshInterval" number Interval in seconds at which io.Connect Desktop will try to refresh the io.Manager token. Defaults to 3600.
"url" string Required. URL pointing to io.Manager.

The "features" object has the following properties:

Property Type Description
"applicationsStore" boolean If true (default), the io.Manager app store will be automatically injected.
"layoutsStore" boolean If true (default), the io.Manager Layout store will be automatically injected.
"commands" boolean If true (default), the io.Manager commands will be automatically injected.
"preferencesStore" boolean If true (default), the io.Manager app preferences store will be automatically injected.

To send client crashes to the io.Manager Server, edit the "output" property of the "crashReporter" top-level key in the system.json file:

{
    "crashReporter": {
        "output": {
            "type": "server",
            "serverUrl": "http://localhost:4356/api/crashes"
        }
    }
}

If you want to support different environments and regions that connect to different io.Manager instances, see the Getting Started > How to > Rebrand io.Connect Desktop > Functionality > Environments & Regions section.

Available since io.Connect Desktop 9.4

The "cache" object has the following properties:

Property Type Description
"clearOld" boolean If true, on opening a new session to io.Manager, all cache files from previous sessions will be deleted. Defaults to false.
"enabled" boolean If true, will enable caching and persisting data from io.Manager locally (e.g., in case of connection interruptions). Defaults to false.
"location" string Location for the persisted cache files. Defaults to "%LocalAppData%/interop.io/io.Connect Desktop/UserData/%GLUE-ENV%-%GLUE-REGION%/ioManagerCache".

The "requests" object has the following properties:

Property Type Description
"closeSessionTimeout" number Interval in milliseconds to wait for a response to the closeSession request to io.Manager. Defaults to 10000.
"openSessionTimeout" number Interval in milliseconds to wait for a response to the openSession request to io.Manager before proceeding from cache. Defaults to 60000.
"timeout" number Interval in milliseconds to wait for a response from io.Manager. Defaults to 60000.