Igloo Control Panel browsers
Tabs and applications shown by Igloo Control Panel instances connected to a service are configured by that service. This page describes available pre-set browsers, defaults, and custom browser configuration.
The related keys in config.json
are outlined here, as well as being discussed in more detail below.
Any configured browser can be used as an app or a tab.
config.json
See Configuration | controlPanel for details on the section of config.json
that this page is describing.
{
"controlPanel": {
"tabs": ["default"],
"apps": ["matterport", "streetview", "warping", "default"],
"_defaultOverrides": {}
}
}
The tabs
entry is a list of browser identifiers that will be displayed as tabs in Igloo Control Panel.
The apps
entry is a list of browser identifiers that will be displayed in the Apps tab of Igloo Control Panel (if that tab is configured for display).
Pre-configured browsers
Pre-configured browser identifiers are as follows:
"cast"
- Cursor Control"gameEngine"
- Game Controller"apps"
- Apps"contentBank"
- Content Bank App"matterport"
- Igloo Matterport Service control page"streetview"
- Igloo Street View Service control page"icedrop"
- Igloo FileDrop"openStageControl"
- Open Stage Control"modelViewer"
- Simple Model Viewer"layers"
- Layers tab"kuula"
- Kuula control page
Defaults
The "default"
identifier for apps and tabs displays the recommended selection. This can change between versions, so new apps and tabs are automatically shown when using this setting.
Current defaults:
Tabs:
["cast", "layers", "gameEngine", "apps"]
Apps:
["contentBank", "icedrop"]
Custom browser configuration
A custom browser can be described in the custom_browsers.json
file, and then added to config.json
to display it as an app or tab.
Here’s an example browser declaration for viewing the NDI Studio Monitor control page in Control Panel:
"studioMonitor": {
"name": "NDI Studio Monitor",
"url": "$remoteIP:80",
"https": false,
"icon": "$ai/ndi.png",
"description": "Access NDI settings remotely"
}
studioMonitor
is a unique key for the browser, as for the pre-configured browsers above. This unique key is the string that should be added to the apps
array in config.json
.
name
is a string, and should be self-explanatory.
url
is a string of the URL that the browser will load. $remoteIP
will be replaced with the IP address of the server that Control Panel is connected to. Do not include http(s)://
in this URL, because:
https
is a boolean - if this is true
, the browser will use https to connect to the provided URL. This defaults to false
, so doesn’t need to be specified for browsers that don’t need to use https.
icon
is a string which dictates what icon will be displayed for a browser. $ai
is replaced with a path to the app-icons
directory in the service’s installation folder - Icons can be placed in this folder and then referenced by filename as above.
Alternatively, any item of this list is also an acceptable string. A default icon will be displayed if no icon is provided.
description
is a short string that describes the browser’s functionality, which is displayed alongside the name and icon on the apps tab.
custom_browsers.json
will look like this after adding this browser declaration:
Additional browsers should be separated with commas:
After saving custom_browsers.json
, you can add keys to config.json
for the new browsers.
This will set the tabs to the current defaults followed by the browser defined as touchMix
, and the apps to the current defaults followed by the studioMonitor
browser.
Overriding pre-configured browsers
the _defaultOverrides
key in config.json
(described here) allows alteration of pre-set browser properties using the same structure as a custom browser declaration.
e.g. to change the Mouse tab’s name to “Cast” and the Controller tab’s description to “Something else”:
Icons
todo