We use a pugin scheme to allow easy addition of software modules to the framework. These plugins may either be used to work on the data streams (
Plugin Telnet), display additional information (
Plugin Status) to the user or be bywork (
Plugin URLFilter).
Standard plugins are provided with the package. These plugins are desribed here.
How the plugins work:It is
important that you understand how the plugins work to configure them correctly. You cannot simply put the plugins in the configuration file in any order;
order is important.
Imagine the data flowing through the plugins from
left to right (from remote computer to user).
CORRECT:
plugins=Socket,Telnet,Terminal,Status
WRONG: (Telnet must be between Socket and Terminal)
plugins=Telnet,Socket,Terminal,Status
All plugins that work with the data stream (like Plugin Script) must be between Plugin Socket and Plugin Terminal.
standard plugins:
| Plugin | Comments |
|---|
| Plugin Socket | A most basic plugin used for low level communication with remote hosts. It almost always needed. |
| Plugin Telnet | This is the actual handler for telnet type communications. It filters the data streams and handles all telnet options. |
| Plugin SSH | For more secure communication you would rather use SSH instead of the Telnet plugin as it provides a way for secure communication over insecure networks. |
| Plugin Terminal | This is a very important plugin as it is the actual terminal so you can see what you do. It implements an ANSI/VT320 compatible terminal emulation. |
| Plugin Shell | A shell plugin for use with local command shells. Not really useful right now. |
add-on plugins:
| Plugin | Comments |
|---|
| Plugin Status | An example how to write a listener plugin and display information. |
| Plugin Timeout | A useful plugin for Applet users. It will allow you to define an idle timeout to close the connection. |
| Plugin ButtonBar | The new implemenation of our well known button bar module. With new configuration options and better look than ever. |
| Plugin Script | The script plugin may be used to automate login procedures for guest accounts. |
| Plugin Sink | The Sink plugin is a replacement of the Terminal plugin, which just reads and discard data. Useful if you do not want output. |
| Plugin URLFilter | Filters URLs out of the incoming data and displays a list to open them in a web browser (Applet) |
| Plugin MudConnector | A special plugin for www.mudconnector.com to display a list of muds to connect to. |
| Plugin BSX | A third party plugin for use with BSX enabled MUDs. It is contained in the contributed package (see download). |
More than one plugin with the same name:To accomplish that we have introduced identifier for the plugins. A normal plugin list would look like:
plugins = Socket,Telnet,ButtonBar,Terminal
If you wanted to set up another button bar you are in trouble because it would read the same options twice. So when setting up two plugins of the same name you do as follows:
plugins = Socket,Telnet,ButtonBar(one),ButtonBar(two),Terminal
You give both plugins a unique name (one and two) and use this name in any following configuration properties:
And that is it! If you define properties without the unique name they will be used as fallback values in case a needed property is not set for a specific plugin.
Have a look at the
applet.conf.