The NetPhantom Terminal Window

A terminal emulator window look-and-feel as well as full clipboard cut/copy/paste functionality is provided. Support for user-defined settings, e.g. hotspots, links, fonts, colors, rule cursor, window size and placement.

The terminal window and its dialog boxes are actually a NetPhantom compiled distribution application called terminal.jar in the terminal subdirectory on the server. This application can be customized and e.g. translated into another language.

But this is not all: it is extendable by means of new toolbar buttons, menu items, pull-down menus, dialog boxes, etc, with code written in Java on the server-side; no extension is required whatsoever on the client side.

To extend the Terminal Application with new functionality, click here.


Terminal properties

Terminal properties is specified on an end-user basis, the server settings are used as defaults. The properties are display options including rule cursor, edit options, the terminal font and colors, window size and placement, keyboard layout and hotspots.

Terminal fonts

The user can select the display font for the terminal window and have it automatically sized (default). The option Anti-alias causes fonts to be rendered using a smoothing algorithm and very often appears more readable. For very narrow or thin fonts, the Bold option can be selected. The list contains all available monospaced fonts on the client, however, some of them may not be able to display all the required characters in the host session. In this case, select another font.

 

Terminal colors

The terminal colors are by default the ones specified in the server by e.g. an administrator. These colors can however be redefined on user-basis with the dialog box below:

 
 

Keyboard layout

Each user can customize the keyboard layout in order to define that the Right Control key should be the host Enter key, etc.


Hotspots and Links

The terminal window displays Links such as hyperlinks to Web addresses (HTTP or FTP) and links to email addresses, opening the required program; the browser or the mail program. The function keys and other key with special meaning can be set to display active links in the terminal window. The function keys PF1-24 or F1-24 has a special character "#" that is used to define any number between 1 and 24, so "PF#=" will cause e.g. a function key link to be displayed whenever the text "PF3=Exit" is displayed on the screen.


Properties stored on the Client

The properties are stored on the client in a file named .NetPhantomClient.properties and is located in the directory of the users' home directory concatenated .NetPhantom6, i.e. C:\Users\user-id\.NetPhantom6 under Windows. This is the same directory used to store SSL information.

Sample properties file contents
    #Tue Dec 09 00:30:15 CET 2008
    DONOTOUTLINEPRESENTATIONSPACE=0
    RULECURSORLINESTYLE=0
    TYPEAHEAD=1 
    CUTCOPYPARSING=0
    PROMPTONPARSE=0
    KEYHOTSPOTSENABLED=0
    CURSORHEIGHTINSERTMODE=100
    KEYBOARDREMAPPER=40\:0f0f43430f0f4343,39\:1212464612124646,38\:0e0e42420e0e4242....
    3270BOXDRAWING=0
    LINKSENABLED=0
    HOSTCOLORS=0000009191ff6eff6e80ffffff4040ff6effffff00e0e0e0aaaaaaccccffccff...
    CURSORHEIGHT=100
    FONTSIZE=0
    SMARTINSERTMODE=1
    PCINSERTMODE=1
    HOSTALARM=1
    CURSORNONBLINKING=0
    LINKTEXTS=
    RULECURSOR=0
    WINDOWBOUNDS=0,0,587,428
    KEYBOARDAUTORESET=0
    PASTETEXTWRAPPING=0
    ANTIALIAS=0
    SAVEORIGINALFIELDSPACING=0
    RULECURSORORIENTATION=0
    BOLDFONT=0
    FONTNAME=Consolas
    KEYHOTSPOTSTRINGS=|20|\u00A7|3|\u00A7|63|\u00A7|1|\u00A7|5|\u00A7|50|\u00A7|...

Changing terminal session

If enabled by the server administrator, the current terminal session can be changed without affecting the currently connected sessions. To access the Change session dialog box, choose the menu item File - Change session.


Configuring the Terminal Window on the NetPhantom Server

Use the Server Administration program to configure the Terminal Window and follow the points below.

  1. Select the menu item Configure - Server - Base.
     
  2. Select the Applications notebook tab, and make sure that an Application name NP_CLIENT_TERMINAL exists and points to the runtime file terminal/terminal.jar. If not, add a new application with the following data, and make sure to load it.


     

  3. Select the Host notebook tab. Default settings that are used for all host sessions (unless specifically overridden for a host session, see #5 below) are specified on the notebook tab in the fields below.


     

    • Default application should be set to a loaded Application name.
       
    • Default application class is used for extending the terminal application (see Extending NetPhantom Terminal Application) and should be left blank.
       
    • A user can change terminal session, and in order to control to which session he/she is allowed to change to, specify a list of host IDs in Default allowed host IDs. The special entry * indicates all configured host sessions.
       

  4. Each host session now have a description (that is displayed in the terminal window title bar and in the Change session dialog box):


     

  5. To override the default terminal application settings for a specific host session, use the fields as described below.


     

    • Application should specify a loaded Application name.
       
    • The Application class is used for extending the terminal application (see Extending NetPhantom Terminal Application) and should be left blank.
       
    • A user can change terminal session, and in order to control to which session he/she is allowed to change to, specify a list of host IDs in Allowed host IDs. The special entry * indicates all configured host sessions, and - specifies the default settings for all sessions. Leaving this entry blank will the allowed host IDs to be empty and thus can a user not change session.

     
  6. Restart the server.


Manual configuration of the Terminal Window

First the runtime application used for the terminal window must be defined and loaded as an application. This is done in the [Application] section as below (items in bold are the required changes):

[Application]
load=MYAPP1 MYAPP2 NP_CLIENT_TERMINAL MYAPP3
NP_CLIENT_TERMINAL=terminal/terminal.jar

Then, the host session(s) must be configured. Each host session can be configured individually (e.g. with a different language of the terminal.jar application. To avoid the requirement to specify an application for all host sessions, a default application can be specified. The table below describes all items that applies the terminal application settings in the [host] section:

To use the default terminal application provided with NetPhantom, specify:

[host]
defaultApplication=NP_CLIENT_TERMINAL

defaultApplication If specified, should be the name of the terminal application (e.g. NP_CLIENT_TERMINAL as the example above showed).
defaultApplicationClass If specified, should be the class name of the terminal application Java implementation extending the server class se.entra.phantom. server.TerminalApplication.
defaultAllowedSessions A default list of host session IDs that an end-user can change session to. If this entry is empty or not present, the menu item File - Change session will be disabled unless overridden by a host ID-specific definition. The list of host sessions corresponding to the specified host IDs are displayed (in the specified order) in the list box in the dialog. The host IDs should be specified without separator, e.g. the host IDs A, M, B, Q and C (in that order) are specified as defaultAllowedSessions=AMBQC. The wild-card character * can be used to specify all available host sessions.
X.application
(where X is the host session ID)
If specified, should be the name of the terminal application. If not specified, the defaultApplication will be used.
X.class
(where X is the host session ID)
If specified, should be the class name of the terminal application Java implementation extending the server class se.entra.phantom. server.TerminalApplication. If not specified, the defaultApplicationClass will be used.
X.description
(where X is the host session ID)
An optional description of the terminal session. This description is seen in the title bar of the terminal window and also in the Change session dialog box.
X.allowedSessions
(where X is the host session ID)
A list of host session IDs that an end-user can change session to. If this entry is empty, the menu item File - Change session will be disabled. If it is not specified, the defaultAllowedSessions entry is used instead. The wild-card character * can be used to specify all available host sessions.