Web Properties¶
This document contains a list of configurable properties for the Web component and their uses.
For other components, please see these pages:
- Common (properties applicable across all AMI applications)
- Center (properties specific to the Center component)
- Relay (properties specific to the Relay component)
- WebBalancer and WebManager (properties for managing connections to 3forge Web)
General Web Properties¶
Note
Property default values that are prefixed with a # are optional or must be configured by the user before use.
To run the Web, you must make sure that the web option is included in the ami.components property in local.properties:
License¶
The following properties correspond to correctly configuring the license of your 3forge application(s).
- Default:
- Description:
-
- The file containing the 3forge license for this machine
Note
This is not where 3forge will check for a license file on startup, it is only used by the license wizard for updating the license file.
ami.web.disable.license.wizard
- Default:
- Description:
-
- Whether to hide the Help -> Enter/Update License menu item, even when not in developer mode
- Default:
- Description:
-
- The URL for generating license keys via Help -> Enter/Update License
- Default:
- Description:
-
- The number of days prior to a valid license expiring that a warning message will start appearing on the login page
HTTP/HTTPS Connection¶
The following properties configure HTTP or HTTPS connectivity to 3forge applications.
You will need to have the HTTP port configured to access the Web via the local machine. By default this is:
Otherwise, the minimum configuration for a HTTP connection is the following:
The full list of properties and descriptions are below.
HTTP¶
http.port
- Default:
- Description:
-
- Sets the access port that web browsers use to connect to the Web
http.port.bindaddr
- Default:
- Description:
-
- Specifies the network interface that the
http.portserver port will be bound to
- Specifies the network interface that the
http.port.whitelist
- Default:
- Description:
-
- Provides either a list of permitted hostname patterns, or a plugin for blocking/granting access based on foreign network address
-
Options syntax:
- file:
file:<file_containing_a_hostname_patterns_per_line\> - text:
text:<newline_delimited_list_of_hostname_patterns> - plugin:
plugin:<class_name_implementing_com.f1.ami.amicommon.AmiServerSocketEntitlementsPlugin\>
- file:
HTTPS¶
https.port
- Default:
- Description:
-
- Sets the access port that web browsers use to connect securely to the Web
https.port.bindaddr
- Default:
- Description:
-
- Specifies the network interface that the
https.portserver port will be bound to
- Specifies the network interface that the
https.port.whitelist
- Default:
- Description:
-
- Provides either a list of permitted hostname patterns, or a plugin for blocking/granting access based on foreign network address
-
Options syntax:
- file:
file:<file_containing_a_hostname_patterns_per_line\> - text:
text:<newline_delimited_list_of_hostname_patterns> - plugin:
plugin:<class_name_implementing_com.f1.ami.amicommon.AmiServerSocketEntitlementsPlugin\>
- file:
https.keystore.file
- Default:
- Description:
-
- Path to the keystore file (using Oracle keytool)
- Use with the
https.keystore.passwordproperty
https.keystore.password
- Default:
- Description:
-
- Password associated to the keystore file in
https.keystore.file
- Password associated to the keystore file in
Connection Settings¶
ami.web.http.connections.max
- Default:
- Description:
-
- The maximum number of concurrent HTTP connections (for preventing DOS attacks)
ami.web.http.debug
- Default:
- Description:
-
-
Debug options for the Web:
offonverbose
-
ami.web.http.debug.max.bytes
- Default:
- Description:
-
- Max number of bytes to store debug data if using
ami.web.http.debug=verbose
- Max number of bytes to store debug data if using
Web to Center Connection¶
These properties determine how the Web connects to 3forge Centers.
The Web can connect to an arbitrary number of Centers, provided the below options are configured.
- Default:
- Description:
- A comma-delimited list of Centers that the Web can connect to
-
Each Center can be prefixed with an alias that the Web will use to reference that Center in the format
alias=host:port, e.g:ami.centers=myprimary=localhost:3270,othercenter=some.host:3270
Note
The first supplied URL is considered the primary Center.
If the 3forge application is running both Web and Center, this Center will be the primary Center.
ami.center.<center_alias>.keystore.file
- Default:
- Description:
- Must be supplied if the Center is using an SSL connection
- Path to the Center's keystore file (using Oracle keytool)
center_aliasis the Center name as it appears inami.centersproperty- Use with the
ami.center.<center_alias>.keystore.passwordproperty
ami.center.<center_alias>.keystore.password
- Default:
- Description:
-
- Password associated with the keystore file in
ami.center.<center_alias>.keystore.file
- Password associated with the keystore file in
ami.center.<center_alias>.keystore.contents.base64
- Default:
- Description:
- Alternative to supplying a keystore file if the Center is using an SSL connection
- The contents of the keystore should be base64
center_aliasis the Center name as it appears inami.centersproperty
Session Options¶
These properties configure session-specific behavior for users, e.g: number of users, web resources, and other visual markers.
See this document for more information on users and sessions in Web.
- Default:
- Description:
-
- Name of the cookie to store in the web browser for each sessions (corresponds to the
__SESSIONIDvariable) - If multiple 3forge instances are sharing a host, then each instance must have a unique cookie name
- Name of the cookie to store in the web browser for each sessions (corresponds to the
- Default:
- Description:
- Maximum number of sessions allowed per cookie
- Each Web instance will have one cookie that is shared across different sessions in the same browser, unless incognito mode is used or supplied a different cookie file
- Default:
- Description:
-
- Path to the directory for Web hosted resources
- Accessed via the front end in Dashboard -> Resource Manager
- Default:
- Description:
-
- Time in seconds that a resource is valid for in the cache before expiring
ami.session.check.period.seconds
- Default:
- Description:
-
- Time in seconds before 3forge checks and removes expired sessions (disconnects, closed browsers, etc.)
- Default:
- Description:
-
- Time in seconds that must pass before a session is considered expired (and logs the user out)
- Starts from when the browser tab or session is no longer visible (closing the tab, session chooser, etc)
- Default:
- Description:
-
- Whether to allow the application to be framed inside an iFrame
- If set to
false, then X-Frame-Options and SameSite options should be included in header
- Default:
- Description:
-
- Sets the level of cookie security
- Accepted options are:
NoneStrict
- Default:
- Description:
-
- Declare a readonly session variable available in the Web
- See this section for more information on formatting variables
ami.web.http.slow.response.warn.ms
- Default:
- Description:
-
- Logs a warning if a full round-trip HTTP(S) request and response is greater than the specified duration in milliseconds
ami.web.show.wait.icon.after.duration
- Default:
- Description:
-
- Duration in milliseconds before displaying the loading/waiting icon
- Default:
- Description:
-
- Logs a warning if an AmiScript block can not be executed within the specified duration in milliseconds
ami.web.portal.dialog.header.title
- Default:
- Description:
-
- Title on the portal dialog header (i.e. loading and error dialogs)
Developer Options¶
These properties configure behavior when in developer mode for a Web instance.
- Default:
- Description:
- Directory where autosaved versions of a layout are saved
- Default:
- Description:
- The minimum number of backup revisions of layouts that should be saved per user
- Default:
- Description:
- How often in minutes layouts should be automatically saved to the backup file
- Default:
- Description:
- Maximum number of debug/info messages to store for debugging purposes in edit mode
- Default:
- Description:
- Maximum number of warming messages to store for debugging purposes in edit mode
- Default:
- Description:
-
- Comma-delimited list of AmiScript functions to disable in Web
- Leave blank to enable all functions
Note
If using WebManager, readBinaryFile and writeBinaryFile should be disabled as they use the local Web directory to read and write files, not the WebManager. Use a FileSystem object instead.
Login and Display Options¶
These properties configure how the login page for a 3forge application should behave.
- Default:
- Description:
- Whether the login page should display background animations
- We recommend to set this to
falseif used on remote desktops
ami.login.page.terms.and.conditions.file
- Default:
- Description:
- (Optional) File to include in the login page, requiring the user to acknowledge terms and conditions before logging in
- Default:
- Description:
- Default username for logging into 3forge
- Default:
- Description:
- Default password for logging into 3forge
- Default:
- Description:
- Whether to autocomplete the default username
- Default:
- Description:
- Path to file containing image to be displayed on the login screen
- Image will be scaled to a pixel width and height of 350x200
- Default:
- Description:
- Message displayed if the maximum number of sessions is exceeded
- Default:
- Description:
- Title of the login page tab in the browser with the prefix "3forge -"
- Default:
- Description:
- Name of the 3forge tab in the browser after login
- Default:
- Description:
- The icon to put in the tab (by default this is the 3forge logo)
-
To replace, set the property to the following:
Note
The icon must be a .ico file and be in your Web resources directory (default is amione/web_resources).
ami.web.splashscreen.animation.file
- Default:
- Description:
- (Optional) Allows users to provide their own loading animation on login instead of the default 3forge loading animation
- The default file is a 81x81
.gif
Note
We strongly recommend storing this in the web_resources directory of your 3forge installation and providing only .gif files as other file types may cause unexpected behavior.
ami.web.splashscreen.info.html
- Default:
- Description:
- Information to show on the splashscreen (rendered as html)
- Default:
- Description:
- URL address of the logout page
Plugins¶
These are a list of properties for external plugins that can be used in Web.
Entitlements¶
A custom entitlements plugin that is used to configure user access permissions to a 3forge Web instance. More information can be found here.
- Default:
- Description:
- Optional entitlements plugin
- Class name of the custom entitlements plugin
- Must implement the
AmiAuthenticatorPlugininterface and be included in the plugin directory (amione/lib)
- Default:
- Description:
- Amount of time in milliseconds before 3forge assumes the authentication plugin has timed out
ami.auth.concurrent.max.wait.ms
- Default:
- Description:
- (Optional) Amount of time in milliseconds 3forge will wait before allowing another authentication request to be sent
Data Filter¶
Property for configuring the data filter, an optional external plugin for controlling visibility of data in 3forge based on some entitlements.
More information can be found here.
ami.web.data.filter.plugin.class
- Default:
- Description:
-
- Class name of custom data filter used to restrict data access
- Must implement the
AmiWebDataFilterPlugininterface and be included in the plugin directory (amione/lib)
AmiScript¶
For user-written custom AmiScript classes, use this property to make them accessible in Web. See the custom class documentation for more details on implementation.
ami.web.amiscript.custom.classes
- Default:
- Description:
-
- A comma-delimited list of classes to include for access within AmiScript
Dashboard Style¶
Custom dashboard style (colors, etc) files can be supplied for greater customizability options in 3forge.
- Default:
- Description:
-
- Comma-delimited list of files (wildcards supported) which contain 3forge styles
- See style sheets in Menu -> Dashboard -> Style Manager within 3forge
Custom Web Panels¶
3forge supports integration of external panel types and visualizations. More information on custom panels can be found here.
- Default:
- Description:
-
- Comma-delimited list of names of custom panel type configurations
- Use with the prefix property
ami.web.panel.<panel_name.class>to correctly load an external panel plugin - The default value adds the "Map" visualization panel for datamodels
ami.web.panel.<panel_name>.class
- Default:
- Description:
-
- Declares a custom panel's name (to be referenced in
ami.web.panels) and loads its plugin - Must be set to the fully qualified class name of the plugin
- The default value is the class of the "Map" visualization panel for datamodels
- Declares a custom panel's name (to be referenced in
Custom JavaScript¶
JavaScript can be invoked in Web via AmiScript using the AmiWebGuiServicePlugin interface. See more information on implementation here.
- Default:
- Description:
-
- A comma-delimited list of class names implementing the
AmiWebGuiServicePlugininterface
- A comma-delimited list of class names implementing the
Accepted Web Origins¶
Please refer to the Mozilla documentation on CORS
ami.web.permitted.cors.origins
- Default:
- Description:
-
- Control which origins are accepted in AMI Remote Procedure Calling (RPC)
Default Authentication Access File¶
By default, AMI launches with a configurable text file access.txt located in the installation's amione/data directory. This file defines the following:
- Usernames
- Passwords
- Default layouts
- User permission level (dev, admin, etc)
It comes preloaded with the following access permission line:
This is the default username and password that AMI launches with for easy testing purposes.
Warning
We strongly recommend using an authentication plugin for increased security. We suggest only using access.txt for testing and non-production cases.
To make access.txt more secure, please follow these steps.
Access Rule Structure¶
For each user, you can supply a pipe-delimited (|) line with the following structure:
- For example, the following user:
-
has the following attributes:
- Username:
user - Password:
user123 - Permissions: Neither an admin or dev
- Username:
Any additional parameters are supplied in the format key=value after the pipe, e.g: ISDEV=true.
- To make
usera dev:
See the table below for a list of accepted parameters.
Additional User Parameters¶
| Key | Value | Example | Description |
|---|---|---|---|
ISDEV |
|
ISDEV=true |
Whether this user has developer rights and can make edits (green toggle button) |
ISADMIN |
|
ISADMIN=true |
Whether this user (must also have ISDEV=true or there is no effect) can shutdown 3forge from within the GUI via File -> Shutdown |
amiscript.variable.<varname>=value |
String or numeric (type is inferred by AMI) | amiscript.variable.region="NY" |
Defines a session variable for this user. Type inference is done by AMI, e.g: amiscript.variable.myvar=123 will be of type int, but amiscript.variable.myvar=123L will be of type long |
developer_ami_editor_keyboard |
|
developer_ami_editor_keyboard=vi |
For developer mode, should the editor use plain text or vi mode |
LAYOUTS |
Regular expression or a comma-delimited list of layout files | LAYOUTS=* |
The layouts (in data/cloud) that are available to this user. This is equivalent to the property ami.web.default.LAYOUTS |
ami_layout_current |
Name of current layout | ami_layout_current=untitled.ami |
Current layout for this user |
Note
There a number of other user settings not listed here, however we generally recommend these are set outside of access.txt.
More information can be found here.
Deprecated¶
These parameters have been deprecated:
| Key | Description | Alternative |
|---|---|---|
ami_layout_shared=default |
Default layout to load. The deprecated property ami.shared.layouts.dir must also be configured |
Use LAYOUTS instead |
amivar.<varname>=value |
Defines a string session variable for this user |
Use amiscript.variable.<varname>=value instead |
Example Configuration File¶
Layouts and User Files¶
These properties are useful for controlling different levels of user access to layouts and where files are located.
For specific user settings, please refer to the guide on this page, or see the user settings properties below.
- Default:
- Description:
-
- The default limit for a response to a query in AmiScript
- Default:
- Description:
-
- Controls how long to wait for AmiScript to execute before timing out, e.g: when a layout is executed
- Allowed time values are:
nanosecondsmicrosecondsmillisecondssecondsminuteshours
- Default:
- Description:
-
- Location of the default authentication file
access.txtused for configuring access to 3forge - More information in this section
- Location of the default authentication file
users.access.file.encrypt.mode
- Default:
- Description:
-
- Whether
access.txtis encrypted,offindicates the file is plain text - Set to
passwordto indicate that the password variable must be encrypted
- Whether
Note
See the strEncrypt(...) function for encrypting passwords.
users.access.file.for.entitlements
- Default:
- Description:
-
- Whether to use
access.txtfor user entitlements when other authentication methods are being used -
Valid options are:
-
off:access.txtnot used for user attributes on:access.txtused if foundforce:access.txtused if found, overrides user attributes defined in other authentication responsesrequired:access.txtrequired, returnsnullif a user isn't foundrequired_force:access.txtrequired and overrides user attributes defined in other authentication responses
- Whether to use
- Default:
- Description:
-
- Directory containing the
.ami_settingsuser files and user preference files
- Directory containing the
- Default:
- Description:
-
- Base directory of the Web installation's cloud directory
- Layouts and user settings saved to the cloud will be stored in this directory
- Default:
- Description:
-
- A list of true type font files (
.ttf) to load which will be available for use in dashboards - May include wildcards, e.g:
my/fonts/*.ttf
- A list of true type font files (
- Default:
- Description:
-
- A list of font family names that are assumed to be available in the browser
- To supply your own
.ttffile of an existing font, you need remove to remove the font family from the property
Web to WebManager Connection¶
User layouts and preferences can be stored in a separately hosted WebManager, a specialized 3forge component for file management. More information on the WebManager can be found here.
If connecting to a WebManager, you will need to provide the following:
Descriptions are listed below.
- Default:
- Description:
-
- Location of WebManager host if using WebManager to load files
- If not specified, the local file system is used
Default Layout¶
The default layout refers to the layout loaded when a given user logs in. There are several ways to set the default layout for a user, either via a property in local.properties or as a variable in access.txt.
If multiple options are supplied, then priority is determined from highest to lowest where 0 is the highest:
| Property | Priority Level |
|---|---|
ami.web.default.DEFAULT_LAYOUT |
PRIORITY 0 |
ami.web.default.layout |
PRIORITY 1 (deprecated) |
ami_layout_shared in access.txt file |
PRIORITY 2 (deprecated) |
ami.web.default.layout.shared |
PRIORITY 3 (deprecated) |
E.g: ami.web.default.DEFAULT_LAYOUT has a priority of 0, so all other properties will be ignored.
Properties¶
To set the default layout, use the following properties.
We strongly recommend using these properties to configure the default layout(s). To fine-tune user access, either use access.txt or an entitlements plugin.
ami.web.default.DEFAULT_LAYOUT
- Default:
- Description:
-
- The default layout loaded on login
- Stored in the cloud directory of the Web installation (default is
data/cloud) - If otherwise specified, the file must be supplied as either
ABSOLUTE,LOCAL, orCLOUD:- e.g:
ABSOLUTE:path/to/default_layout.ami
- e.g:
ami.web.default.LAYOUTS
- Default:
- Description:
-
- A comma-delimited list of layouts that are accessible for all users (non-dev and non-admin)
- Stored in the cloud directory of the Web installation (default is
data/cloud) - If otherwise specified, the file must be supplied as either
ABSOLUTE,LOCAL, orCLOUD:- e.g:
ABSOLUTE:path/to/layout1.ami,ABSOLUTE:...
- e.g:
We strongly discourage users from using these properties as the shared directory is no longer supported. We recommend users use the cloud directory instead.
ami.shared.layouts.dir
- Default:
- Description:
-
- Base directory of where shared layouts are stored (layouts available to end non-dev users)
- Required for using other deprecated layout properties
ami.web.default.layout
- Default:
- Description:
-
- Use
ami.web.default.DEFAULT_LAYOUTinstead - Name of the layout's file name, supplied as
SHARED:<layout_file>.ami - Any user that logs in will be automatically assigned this layout
- Use
ami.web.default.layout.shared
- Default:
- Description:
-
- Same as
ami.web.default.layout
- Same as
Note
Using ami.web.default.layout.shared together with ami.shared.layouts.dir=path/to/dir will load a specific layout to every user who logs in.
User-Specific Default Layout¶
The properties above will apply for all users.
- To set user-specific default layout(s), supply the
DEFAULT_LAYOUTvariable inaccess.txt, for example:
user1's default layout is the fileuser1_defaultLayout.ami.user2's default layout isuser2_defaultLayout.ami.
Note
This is equivalent to setting the property ami.web.default.DEFAULT_LAYOUT in local.properties. By default, the layouts will be taken from the cloud directory (default is data/cloud).
Deprecated
This method is deprecated as we no longer support the shared directory. To use, you will need to configure the ami.shared.layouts property.
You can also supply the ami_layout_shared variable in access.txt with the following format:
Note
Using either the DEFAULT_LAYOUT variable or ami.web.default.DEFAULT_LAYOUT will override this.
End User Behavior¶
User Settings¶
All default user-specific settings can be configured programmatically using ami.default.user.<user_setting> in local.properties.
- As an example:
This sets the default user settings for timezone to be in UTC.
There are several properties that can be set which are listed in the table below.
Note
This sets the default behavior for any user in 3forge.
To set individual preferences, this can be done directly in a user settings file. See this page for more details.
| Property | Description | Value | Example |
|---|---|---|---|
dateFormat |
|
[yyyy/MM/dd, MM/dd/yy,...] |
ami.default.user.dateFormat=yyyy/MM/dd |
timeFormat |
|
[hh:mm a, h:mm, HH:mm, h:mm a]E.g, if time is 13:30:
|
ami.default.user.timeFormat=HH:mm |
timeZone |
|
[EST5EDT, GMT, ACT, ...] |
ami.default.user.timeZone=EST5EDT |
numberSeparator |
|
[1,234,567,890; 1,234,567,890.123; 1'234'567'890; 1234567890,123; ...] |
ami.default.user.numberSeparator=1,234,567,890 |
numberDecimalPrecision |
|
Integer number from 0-10 | ami.default.user.numberDecimalPrecision=4 |
sciNotDigitsLeft |
|
Integer number from 1-20 | ami.default.user.sciNotDigitsLeft=4 |
sciNotDigitsRight |
|
Integer number from 1-20 | ami.default.user.sciNotDigitsRight=5 |
numberNegativeFormat |
|
[sign,parentheses] |
ami.default.user.numberNegativeFormat=parentheses |
spreadSheetFormatOption |
|
[always,never] |
ami.default.user.spreadSheetFormatOption=never |
autoApplyUserPrefs |
|
[always, never, ask] |
ami.default.user.autoApplyUserPrefs=always |
defaultFileBrowserPath |
|
path/to/files |
ami.default.user.defaultFileBrowserPath=C:/mypc/ami/amione |
General End User Behavior¶
ami.show.menu.option.datastatistics
- Default:
- Description:
-
- Determines when and which users can view data statistics (under Menu Bar -> Help -> Data Statistics)
- Options are:
always,never,dev,admin devmeans only available in dev modeadminmeans only available in admin mode
ami.show.menu.option.fullscreen
- Default:
- Description:
-
- Determines when and which users can set the fullscreen menu option (under Menu Bar -> Windows -> Full Screen)
- Options are:
always,never,dev,admin devmeans only available in dev modeadminmeans only available in admin mode
- Default:
- Description:
-
- The rate that the web browser is updated with new data
- This is used to tune the performance of 3forge and the user experience
- We do not recommend a refresh rate of higher than 20 frames per second
ami.web.default.cmd.timeout.ms
- Default:
- Description:
-
- The number of milliseconds to wait for a response when sending a command to the backend
- Default:
- Description:
-
- The amount of time in seconds before a user is prompted that their request could not be serviced
- Default:
- Description:
-
- Assumes that a user is not an admin if not specified in
access.txt - Set to
trueto give users admin permissions by default
- Assumes that a user is not an admin if not specified in
- Default:
- Description:
-
- Assumes that a user is not a dev if not specified in
access.txt - Set to
trueto give users dev permissions by default
- Assumes that a user is not a dev if not specified in
ami.web.url.always.include.layout
- Default:
- Description:
-
- Determines whether the current layout appears in the URL parameters
- Default:
- Description:
-
- Generic error message displayed to users when an exception is not caught by 3forge
- Default:
- Description:
-
- The email address to send error reports to when a user clicks to report an error
- Default:
- Description:
-
- The default subject of the error report email
- Default:
- Description:
-
- The introductory sentence for the error report email
ami.web.filter.dialog.max.options
- Default:
- Description:
-
- (Optional) Maximum number of options to show in the table filter dialog when right-clicking on a column
- Default:
-
See the full list of style options here:
Loading bar style options list
- Description:
-
- (Optional) Color styling for the different loading bar popups
- Takes a comma-delimited list of key-value pairs of the property and color value in hex, e.g:
dialogBgColor=#234567,headerBgColor=#123456
- See below for where colors are applied to popups
Web Activity Tracking¶
This property allows for actions that happen in the Web, such as callback execution or interacting with a window (closing it, hiding it, etc) to be logged.
- Default:
- Description:
-
- Options:
on,off,verbose
- Options:
If on or verbose, then activity is logged only when the Web session is in user mode. So either when:
- The "Editor/Dev" button in the Web toggled off
- A non-dev user accesses the Web and
ami.web.default.ISDEV=false
Example Outputs¶
Activity logging is disabled. No actions will be logged.
Logs are generated in the AmiOne.log for key actions such as opening or minimizing a window and executing callback scripts.
More detailed log entries are created for each action, including additional contextual data.
Performance¶
These properties allow for configuration of computational elements for performance fine-tuning.
The default values provided are recommended baselines, but please do not hesitate to reach out to us at support@3forge.com for additional help.
- Default:
- Description:
-
- A comma-delimited list of tables (types) to automatically cache real-time inside the WebServer
- Any types that a layout references that are not explicitly listed in this property will require a snapshot request from the Center
ami.chart.threading.suggestedPointsPerThread
- Default:
- Description:
-
- Determines the number of threads to use for a chart, based on the number of points to render
ami.chart.threading.maxThreadsPerLayer
- Default:
- Description:
-
- Provides a ceiling on total threads that can be used per chart
ami.chart.threading.threadPoolSize
- Default:
- Description:
-
- The total number of threads (across all users) to allocate for chart image processing
ami.chart.threading.antialiasCutoff
- Default:
- Description:
-
- The number of points before anti-aliasing should be turned off
- For faster rendering of high density charts
- Default:
- Description:
-
- PNG compression level for images that are transferred to the front end
- Ranges from 0-10 where 0 = off and 10 = full compression
- Default:
- Description:
-
- The rate that the web browser is updated with new data
- We do not recommend a refresh rate of higher than 20 frames per second
JavaScript¶
For security purposes, JavaScript code is inherently removed from all HTML panels to prevent Cross-Site Scripting (XSS) attacks.
To allow JavaScript code to be recognized and ran from within an HTML panel, you will need the following property enabled:



