The IntelliPortal architecture uses properties.txt files to set and modify configuration parameters throughout the system on both the client and the server. These files generally consist of a list of keyword pairs such as selectable=true. Some of the most important properties files are listed below.
___________________________________
Every channel has two properties files that are created by the Publisher and published with each channel. The file channelname\properties.txt holds the channel's properties, e.g. its name, type, runtime characteristics, etc. The file channelname\.castanet\properties.txt holds publishing properties such as the name and port number of the transmitter; this file is automatically generated by the Publisher and should not be modified. In addition, HTML channels have a parameters.txt file with additional properties (see HTML Parameters.txt for details.) The properties.txt file for a typical channel is shown below.
channel.directory=C:\\Program Files\\IntelliPortal\\ws\\192.168.2.20@2020\\AdChannel\\files checked=928507245200 datasize=10240 description=Autorun=true:Selectable=false:Mandatory=true:VisibleName=Ads:Categor y=Ads:Visibility=null ipname=192.168.2.20:2020 plain=true properties=C4BN1C6BVCJAQx7JGANNAMGA1MS published=928333429359 requested=928507245200 size=472135 updated=928445587770
There are two client properties files that you should be familiar with. IntelliPortal\lib\properties.txt stores tuner properties on the client. This file is used to point to transmitters, set update frequency, and numerous other values. IntelliPortal\lib\user.ini stores user preferences, e.g. home channel, dialup properties, etc. Both of these files are explained below. All of the properties in both files are explained in the table that follows.
Some of the properties in this file are set with the Publisher; others are automatically generated when you publish the channel. The entries in a properties.txt file differ depending on whether the properties belong to an application channel (i.e. a Java channel) or an HTML channel. The following example shows the properties.txt for an HTML channel.
Autorun=False Category=Toolkit Mandatory=False Selectable=True VisibleName=Your Channel description=Autorun=false:Selectable=true:Mandatory=false:VisibleName=Your Channel:Category=Toolkit:Visibility=null index.page=index.html layout.type=content name=Your Channel publish.time=912476039540 type=HTML
As noted, client properties are divided into two files: properties.txt and user.ini. This facilitates client updates in that user-defined properties, e.g. client size, position, home channel, dialup mode, etc. are not overwritten during a client update. In general, the file user.ini contains user-defined options and properties.txt contains default options. This means that you can update the client, add services, change defaults, etc. without affecting user-defined variables.
For channel developers, the method getTunerProperties() returns all properties defined in both properties.txt and in user.ini. |
The properties.txt file is loaded as the default properties, and then the user.ini file is loaded. If any default properties are changed and saved, the changes are written to the user.ini file overriding the defaults. The higher-level channel properties help determine how the channel will interact with the client container application; they are part of the description entry in channelname\properties.txt explained above. Lower-level channel properties control other aspects of the relationship between the channel and the tuner. For example, the channel update properties (see Updating Channels) determine update process for a channel (e.g. whether it is updated automatically, how often, and what happens to the updated data when received by the tuner.
A typical user.ini file is shown below.
channeldir=C:\\Program Files\\IntelliPortal defaulturl=http://www.netscape.com dialup.autodial=true dialup.prompt=false dialup.server=--LAN-- dialup.usemodem=false dialupchan=Dialup homechannel=Channel Manager hometag=_TOP homevisible=Channel Master httpproxy=webproxy:8080 httpproxy.exceptions= last_x=76 last_y=55 sharedir=C:\\Program Files\\IntelliPortal\\SData\\ size_x=800 size_y=600 update.available=false update.last=928509077790 update.size=5331390
The keyword pairs for values in the various properties files are listed alphabetically below. Note that the actual keywords present in a properties file may vary depending on the actual file. You can add or change keywords with any text editor. The table shows properties that are used by both Java channels and HTML channels. Note that channels using the MECA Storage Facility (MSF) for local client storage have properties in addition to those shown here.
| Property | Value | Description | Default |
|---|---|---|---|
| autorun | true|false | If true, the channel starts automatically when the client starts, if the channel has been subscribed to. | false |
| background.image | filename | The image to use for background of client shell. Place file in lib\images directory. | |
| background. image.style | stretch|tile | The method of placement for the image. Do not use Stretch with 256 colors. | |
| category | text | Defines the category under which the channel is grouped in Channel Manager and channel menu. | |
| classpath | pathlist | A colon-separated list of directories and ZIP files to be searched for classes. | |
| clevel | 0-255 | Information level of the console. 0 = least informative; 255 = most informative. | |
| client.channel | channel name | The channel name that represents the client image. | |
| client.title | String | Title to display on title bar of application. | |
| channeldir | Directory in which workspace directory ws will be created. Can be anywhere, defaults to parent of lib. | ||
| codebase | pathname | Lets you alter the default CLASSPATH of the application. The specified pathname is relative to the channel's base directory. | |
| defaulttrans0 | ip.ip.ip.ip: port | The default transmitter to connect to. | |
| defaulturl | http://www... | The URL to go to if not specified in an HTTP request. | |
| description | text | A short (one paragraph) description of the channel for prospective subscribers. IntelliPortal uses this field to add custom properties. The properties are colon-delimited name=value pairs. | |
| dialup.autodial | true|false | Specifies whether or not the user wishes automatically dialup at startup. | |
| dialup.prompt | true|false | Specifies whether or not the user wishes to be prompted for dialup at startup. | |
| dialup.usemodem | true|false | Specifies whether or not a modem is required for connection (false for LAN). | |
| dialup.server | LAN|ras/dun server name | Specifies the name of the connection. LAN means a direct connection. | |
| dialup.timeout | The Marimba inactivity timeout in seconds. | ||
| enrollchan | channel name | Name of channel to run at client startup. This channel must complete and publish LOGON_SUCCEEDED before any other channels can run. | |
| enrolltrans | trannsmitter:port | Optional. Specifies a transmitter other than defaulttrans0 for enrollment channel. | |
| hide | true|false | If true, the transmitter will not display the channel in it's listings; a user must know the transmitter and channel name to subscribe to it. If false, the transmitter displays the channel name. | false |
| homechannel | channel name | The channel name of the home channel. This is the actual name not the visible name. | |
| homevisible | channel visible name | The visible name (the name the remote sees) of the home channel | |
| hometag | Top|Other defined tag | The tag/bookmark of the channel that the user wishes to use as home | |
| httpproxy | Proxy for HTTP requests. | ||
| httpproxy. exceptions | hostname.com | Lets you bypass the httppproxy for certain hosts/domains. Use spaces to separate multiple hosts. | |
| index.page | URL | HTML channels only; the name of the channel's first page. If specified, the channel is downloaded incrementally, rather than all at once. | index.html |
| install. inactive | ignore| start| notify | Determines what the tuner does with an update that arrives when the channel is not running. Ignore will install the update. Start will install the update and launch the updated channel. Notify will install the update, and conditionally launch the updated channel. | ignore |
| last_x | Last X position of client on desktop. | ||
| last_y | Last Y position of client on desktop. | ||
| layout.file | filename | Layout file to use. Do not use .bin extention. It does this automatically. | |
| layout. location | Location name specified at design time. The location name and type in default implementation of the layout. | ||
| layout.type | content| status| system | Location type specified at design time. See Client Panels. | content |
| logfile | filename | A file into which the log is written. Logging is to the console and this file. | |
| loglevel | 0-255 | The information level of the log. If not specified, defaults to the clevel. | clevel |
| main | classname | For application channels, the name of the class to run when the channel is launched by a tuner. The CLASSPATH of the application will include the channel's base directory which means that top level classes can be located in the channel base directory. | none |
| mandatory | true|false | If true, the channel is always subscribed to. Subscription is not optional. | false |
| name | channelname | The name of the channel that you want to appear in tuner channel listing. | |
| plainfs | true|false | The type of file system can be specified. | false |
| publish. time | string | Created by Publisher. | |
| security. sslOnly | true|false | Indicates whether channel was published through SSL. | false |
| selectable | true|false | If true, the channel appears in the client channel selector. | false |
| sharedir | Directory in which all shared data is stored. Can be anywhere. Defaults to a peer of lib named SData. | ||
| signing. enabled | true|false | Not currently implemented. | false |
| size_x | Width of client at last shutdown. | ||
| size_y | Height of client at last shutdown. | ||
| type | Application| HTML | The channel's type. | application |
| update. action | ignore| restart| install | For application and applet channels, determines what the tuner does with an update that arrives when the channel is running and the channel does not handle the update explicitly. ignore installs the update when the channel terminates. install installs the update. restart stops the channel, installs the update, and restarts the channel. | restart |
| update.active | never| frequently| 5 Minutes| 10 Minutes| 15 Minutes| 30 Minutes| 45 Minutes| hourly| daily| weekly | The frequency at which the tuner will check for updates when the channel is active. | never |
| update. available | true|false | Set by the client at shutdown when an update is due. Resets false after a successful update. | true |
| update. frequency | daily| weekly| monthly| never | Set at publish time of the client channel. | |
| update. inactive | never| hourly| daily| weekly | The frequency of updates when the channel is inactive. | weekly |
| update.last | Internal value, set by the updater, that indicates date and time of last successful update. | ||
| version | Version number displayed in title bar. | ||
| visiblename | text | String that identifies the channel name in the Channel Menu. | blank |
An IntelliPortal client can subscribe to channels from multiple transmitters. For example, a client might receive secure channels for financial transactions from a secure (SSL-Enabled) transmitter and non-secure channels from a different transmitter. The transmitters to which a tuner connects are identified in the intelliportal\lib\properties.txt file on the client.
This file is used to point to one or more transmitters on the server in order to receive channels broadcast from those transmitters. For a successful installation, you need set this properties files on the client machine. Also, if you add transmitters, you need to consider how the properties.txt file will be modified. See the Client Customization Guide for more information.
As a general rule, channel names must be unique across multiple transmitters. Unpredictable results may occur if a client points to different transmitters on which the same channel name is published. |
The default transmitter must match what was configured on the server. It can be either an IP address and port number, e.g. 192.168.2.20:2020 or a fully qualified hostname (hostname and domain name) and port number, e.g. fasholt.mymnet.com:2020
A snippet from a typical tuner properties file is shown below. The field defaulttrans0= points to a single transmitter IP address and port number.
client.channel=IntelliPortalClient client.title=IntelliPortal 1.1 enrollchan=StartupChannel protect= proxy.notforunqualifiedhosts=false proxy.trust=false version=1.0 Beta 1 defaulttrans0=192.168.2.20:2020 layout.file=custom
If you configure the tuner with multiple transmitters, or if you add a transmitter, another defaulttrans= field is required for each transmitter. They must be numbered sequentially and without duplicates.
client.channel=IntelliPortalClient client.title=IntelliPortal 1.1 enrollchan=StartupChannel protect= proxy.notforunqualifiedhosts=false proxy.trust=false version=1.1 defaulttrans0=192.168.2.20:2020 defaulttrans1=fasholt.mymnet.com:2020 defaulttrans2=192.168.2.21:6322 layout.file=custom