Webconsole Configuration

Pierre Kil edited this page Nov 24, 2016 · 11 revisions
Clone this wiki locally

Overview

The Web Console is a HTML and JavaScript Panel renderer that has been written using GWT (Google Web Toolkit). It is automatically included with the controller and can be accessed by navigating to the following URL: -

http://ipaddress:8688/webconsole

Where IP Address is where the controller is running and port is the port number the controller is running on (default is 8688).

The Web Console behaves differently depending on whether you are using a desktop or mobile web browser.

Desktop Mode

Provides the ability to specify the console unit size using the slide out Settings Toolbar (left hand side of the screen). This allows the web console to be used like an emulator or alternatively it can be set to fullscreen mode to make use of the entire display (in fullscreen mode it is advised to create your panel screens in the same orientation as your monitor).

Mobile Mode

This mode does not have a Settings Toolbar but defaults to fullscreen mode; it tries to make your mobile browser look and feel like a native application by hiding the address bar, preventing scrolling and zooming as well as counteracting the window rotation that occurs when you rotate the mobile device.

Browser Support

Due to the heavy use of CSS3 a modern browser is essential; a webkit browser is advised but any of the following should work: -

Google Chrome (Most versions) Safari (Most versions) Mozilla Firefox (Most versions) IE9+ (Some rendering issues in IE9)

Overview

When loading the Web Console for the first time it will default to a Console Unit size of 320 x 480 in Desktop Mode or straight to full screen in Mobile Mode.

Welcome Message

Welcome Message

When you load a newer version of the Web Console for the first time a Welcome Message will be displayed, allowing you to come directly to this documentation which will include any release notes for that version. This message will not show again until you upgrade to a newer version of the Web Console.

Screen Layout

Emulator Controller List

In fullscreen mode the frame of the console unit disappears, also in Mobile mode the settings toolbar is not available.

Console Unit Resizing

To resize the console unit simply enter the desired screen dimensions into the Settings toolbar and click the RESIZE button (the only constraint is that the width must be less than the height).

When resizing to Full screen or a size larger than your monitor the console unit will be rotated to best match your display dimensions (i.e. if your monitor is landscape then the console unit will be landscape).

In fullscreen mode the rotate button will load the inverse screen if it is defined, if it is not then it will appear as though nothing is happening.

Navigation

The Web Console behaves in the same way as other console applications; in desktop mode left mouse click takes the place of touch events (hence the hand cursor when you mouse over the console unit). Gestures are fully supported and system navigation is also possible through Designer configuration.

NOTE: If you do not create a tab bar item to navigate back to the Controller List or logout then you can always hold down on the background for more than two seconds and you will be taken back to the Controller List

Adding Controllers

When you first load the Web Console there will be no controllers defined in the Controller List, you can either add controllers manually or use the Search tab bar button to auto-discover controllers within the same LAN as the server that is hosting the Web Console (searching is only useful when you are within the same LAN).

Search

Add Controller Buttons

Click the Search button to initiate Searching the Search Button image will change to indicate searching is in progress.

The search function attempts to auto-discover controllers in the same LAN as the server hosting the Web Console you are using (if you're wondering why it is limited to the same LAN, it's because of the use of UDP multicasting). Due to this limitation this method is only really suitable when you are also connected to the same LAN. As an example if you had a controller and web console running on your home PC and you configured your LAN to allow access to your Web Console and Controller via the internet; if you connected to the Web Console externally and used the search button it would find your Web Console but report its' URL using its' internal LAN IP which is not valid over the internet so take this into consideration.

Add Controller Screen

The Add Button will take you to the Add Controller screen, which consists of a small input form: - Add Controller Screen

Controller URL

Simply enter the URL of your controller including the http prefix (i.e. http://openremote.org:8688/controller), you should be able to enter this same URL into your browser address bar and get the controller synchronisation page, if you can't do this then you've either entered the URL incorrectly or you haven't configured your network correctly. The URL is checked for validity and if invalid the Controller URL field label will show in red and if you try and Add the controller with an invalid URL then an alert is displayed.

Default Panel Name (Optional)

This is the name of the Panel you wish to load automatically whenever you select this controller from the controller list; it is case sensitive.

Username and Password (Optional)

If the controller is using HTTP Basic Authentication then you can enter the username and password to automatically log you in.

Login

Login

If you connect to a controller that requires HTTP Basic Authentication but you haven't supplied a valid username and password in the Controller settings then when you try and connect to the controller you will be prompted to enter the username and password.

NOTE: Username and passwords are case sensitive

Edit/Delete Controller

Edit Controller

Click the Edit button to the right of a Controller in the Controller List to navigate to the Edit Controller screen. From here you can alter the controller credentials or completely delete the controller.

NOTE: You can delete all the controllers in one go by going to Settings -> Clear Cache

Edit Controller Screen

Settings

Currently all you can do in the settings screen is to Clear Cache, which deletes all locally stored settings.

URL Parameters Support

Below is a list of parameters that can be added to the web console URL to change it's behaviour.

Adding GET Parameters to the URL

To add get parameters to the URL you first need to put a '?' at the end of the URL and then you put the parameter name followed by an '=' sign then the desired parameter value; multiple values must be separated with a '&' symbol.

e.g. http://192.168.1.1:8688/webconsole?parameter=value&parameter2=value

Parameter: Controller URL & Panel Name

Both of these parameters must be set in order to force the web console to load a particular controller and panel combination at start-up.

  • Controller URL (controllerURL) - Sets the URL of the controller to load
  • Panel Name (panelName) - Sets the name of the panel to try and load on this controller

e.g. http://192.168.1.1:8688/webconsole?controllerURL=http://192.168.1.1:8688/controller&panelName=MyPanel

Parameter: Show Welcome Message

Determines if the welcome message should be displayed when the version of the webconsole changes and/or the first time the webconsole is loaded on a browser.

  • Show Welcome Message (showWelcome) - Set to false to prevent the welcome message from appearing

e.g. http://192.168.1.1:8688/webconsole?showWelcome=false

Parameter: Fullscreen Mode

Determines if the web console should load in full screen mode.

  • Fullscreen Mode (fullscreen) - Set to true to force the web console to full screen

e.g. http://192.168.1.1:8688/webconsole?fullscreen=true

Parameter: Show Toolbar

Determines if the toolbar should be shown on the left of the screen (desktop mode).

  • Show Toolbar (showToolbar) - Set to false to disable the toolbar

e.g. http://192.168.1.1:8688/webconsole?showToolbar=false

Debugging

As of revision r9492 it is possible to enable client side debugging of the web console; the debugging capability is still very limited but it should allow you to track down the problem and provide a stack trace on the forums for assistance.

At present you have to compile the web console with the debugging enabled and this cannot be changed at runtime at present: -

To enable debugging edit the following source file: -

org.openremote.web.console.WebConsole.gwt.xml

Set the required options in the logging section by un-commenting the properties and changing the values (please refer to GWT documentation for an explanation of what these properties do): -

<!-- Logging -->
<inherits name="com.google.gwt.logging.Logging" />
<set-property name="gwt.logging.enabled" value="FALSE" />
<!-- <set-property name="gwt.logging.logLevel" value="ALL" /> -->
<!-- <set-property name="gwt.logging.popupHandler" value="ENABLED" /> -->
<!-- <set-property name="gwt.logging.developmentModeHandler" value="DISABLED" /> -->
<!-- <set-property name="gwt.logging.systemHandler" value="DISABLED" /> -->
<!-- <set-property name="gwt.logging.consoleHandler" value="DISABLED"/> -->
<!-- <set-property name="gwt.logging.firebugHandler" value="DISABLED" /> -->
<!-- <set-property name="gwt.logging.simpleRemoteHandler" value="DISABLED" /> -->