Of course, NFuse-enabled MetaFrame XP environments require client devices to access the ICA applications. When working with NFuse clients, there are several things to consider.
First, we'll look at what the requirements are for client devices to be able to use NFuse web application portals. Then, we'll see where on the web server we need to copy the ICA client installation files. Lastly, we'll review the different methods of automating the deployment of that software to client devices.
NFuse Client Requirements
In order to access a MetaFrame XP environment via an NFuse web portal, a client device must meet three requirements:
- The client device must have a web browser.
- The client device must be capable of running ICA client software.
- The client must be capable of launching the ICA client software by following an "ICA" file type hyperlink from the browser.
Basically, almost any web browser can view NFuse web server default web pages, and ICA clients exist for almost every type of device. That means that the first two requirements are almost always met. The show stopper for most devices that cannot access NFuse environments is the third point. The NFuse client device must be capable of launching the ICA client software based on a user clicking a hyperlink to an ICA file on a web page. Some old Windows CE and Java devices do not have this capability. On Macintosh and Java clients, there are some manual steps that must be taken to ensure NFuse applications are launched properly.
ICA Client Source Files and Locations
In order for the default NFuse web pages to be able to provide links for users to install the ICA clients, the ICA client installation files must be located on the NFuse web server. The default web site assumes that the client installation files are located in the following path:
<WebServerRoot>\ICAWEB\<two letter language code>\<ica client version>
For example, the English 32-bit Windows ICA client on an IIS server is located in the \wwwroot\ICAWEB\en\ica32\ folder.
During the installation of NFuse, you are asked if you want to copy the client installation files to the web server. If you choose not to, the default web pages will still point to the default client installation locations. You can then manually copy the ICA client source files to the web server at any time.
Using NFuse to Automatically Instal the ICA Client
Once you ensure that the ICA files are placed on your NFuse web server, you can configure NFuse to automatically install the ICA client software onto a user's client device if they visit the web site from a computer without the client software installed.
As an administrator, you have the ability to customize this process. Similar to the other NFuse configuration options, you can customize the ICA client installation options simply by modifying the NFuse.conf file or via the NFuse administrative web pags.
There are several items that control the action of the ICA client installation from the NFuse web pages:
#OverrideClientInstallCaption=[Place your text here]
(NFuse Administration Web Pages | ICA Client deployment | Enable automatic download of ICA Win32 Web Client)
When this is set to "On," the web client (icat.exe) is automatically deployed to users that connect to NFuse from 32-bit Windows clients if they do not already have the ICA client installed. In order for this to work, you need to have the ICA client source files in the proper location as described in the previous section.
A setting of "Off" will disable this Win32 automatic client deployment.
(NFuse Administration Web Pages | ICA Client deployment | with version)
This line is used in conjunction with the AutoDeployWebClient setting. It allows you to specify the version of the 32-bit Windows web ICA client that is loaded on your web server for deployment. NFuse will compare the value of the WebClientVersion line with the actual version of the ICA client on the user's Win32 machine. If the version in the WebClientVersion line is newer, NFuse will invoke the Win32 ICA client installation process using the ICA client files loaded on the web server.
When you specify a WebClientVersion value on this line, you must enter it with commas instead of periods. Remember from Chapter 10 that you can find out the version of the web client by viewing the properties of the ActiveX control (Right-click wfica.ocx | Properties | Version tab | File Version). For example, if you would like to deploy version 6.30.1050.0 of the ICA web client, you would enter "6,30,1050" on this line. Then, whenever a user connects with a version of the Win32 ICA web client that's older than 6.30.1050 (or whenever a Win32 user connects with no client at all), NFuse will install the new client.
(NFuse Administration Web Pages | ICA Client deployment | Display ICA Client installation caption)
NFuse has the ability to detect the client platform of visiting users. However, it can only detect whether users have the ICA client installed if they are using a Win32 platform. Since NFuse can also only automatically install the ICA client on 32-bit Windows platforms, this ShowClientInstallCaption line allows you to specify how the client installation process works for other platforms.
A value of "on" means that NFuse will display a link for the user to download and install the ICA client in the "NFuse Message Center" section of the main NFuse page. Since NFuse can detect the client platform, this link will be customized for the user for their specific platform.
Setting this value to "off" means that the client installation links will not be displayed, and you will need to figure out some other way to get the client software to your users.
You can also set this line to "auto," which is similar to the "on" setting, except that Win32 users will only see the ICA client installation link if they do not have the client installed. Users connecting from all other platforms will always see the link.
Win32Client or similar
For each ICA client platform, there is an entry in the NFuse.conf file in the format platformClient (for example Win16Client, JavaClient, or Tru64Client). By default, these all have values set to "default." Changing any of these values allows you to specify the text and URL location for the ICA links shown in the NFuse Message Center, which is the area to the right of the application icons on the main NFuse page. To change this, enter the new caption text, followed by an ampersand (&), followed by the URL for that caption. You can string multiple caption/URL pairs together by separating each entry with a comma.
For example, by default, the NFuse web pages offer 32-bit Windows users the "web" version of the ICA client (ica32t.exe, no Program Neighborhood, see Chapter 10 for details). In some cases, you might decide that you would like to offer the full version (ica32.exe) or the Program Neighborhood Agent (ica32a.exe) client in place of the web client. To do this, simply copy the new versions of the ICA clients that you want to use into the \ica32\ clients folder on your web server. Then, update the Win32Client field in the NFuse.conf file so that it points to your new files. In this case, you would change the line Win32Client = default to:
Win32Client=Click here for the full client&/ICAWEB/ica32
/en/ica32.exe,Click here for the PN Agent client&/ICAWEB/en/ica32/
ica32a.exe,Click here for the web client&/ICAWEB/ica32/en/ica32t.exe
The root URL location is specified by the URLMapping field in the NFuse.conf file. Usually, this is the root of the website.
If you want to give you 32-bit Windows users the full client without giving them a choice of the other clients, then set your Win32Client value appropriately. For example:
Win32Client=Click here to download the client&/ICAWEB/en/ica32/ica32.exe
You could also use these settings to use one client in place of another. For example, since NFuse can detect the platform from which a user connects, it will always display the "platform-specific" client installation link. However, what happens if you want to use the Java client for your Mac users, but you want everyone else to use their platform-specific clients? Configuring this via the NFuse.conf file is simple. Out of the box, Mac platforms are configured to use their default Mac clients (in the /icaweb/en/icamac/macica_sea.hqx location on the web server). This is seen in the following line:
To change the setting so that Mac users receive the Java client, you would need to change that line to read:
MacClient=Click here to download the client&/ICAWEB/en/icajava/JICAEngJ.jar
This line allows you to specify the caption and links for ICA clients where the client platform cannot be detected. The "default" setting uses the ICA Java client's links, but you can change this just like any of the other client links. Remember that the NFuse web page can usually detect the platform that a user is connecting from, it just can't detect whether or not that user's client device has the ICA client software installed.
This line allows you to customize the message that is displayed in the client download box when a client needs to be installed. The exact message varies depending on the client platform, but says something to the effect of, "You need to download the ICA client software. To do so, click on the proper link below."
(NFuse Administration Web Pages | ICA Client deployment | Embedded applications | Launch applications as embedded applications)
This line is used to specify the version of the ICA client that will be used if you've specified that ICA applications should be embedded in web pages via the EmbedApplications setting described earlier in the chapter.
A setting of "auto" will cause NFuse to detect the user's platform and automatically deploy the platform-specific client. A setting of "JavaClient" will cause NFuse to use the Java ICA client.
(NFuse Administration Web Pages | ICA Client deployment | Embedded applications | Select Java Client packages)
This line allows you to specify which Java packages are sent to the client when the Java ICA client is deployed. (Refer to Chapter 10 for details of how these packages work.) You can specify as many options as you want, placing them all on the same line separated by commas (with no spaces between entries). You can choose Audio, ClientDriveMapping, Clipboard, COMPortMapping, ConfigUI, PrinterMapping, SecureICA, SSL, Thinwire1, and ZeroLatency.
(NFuse Administration Web Pages | ICA Client deployment | Embedded applications | Select Java Client packages | Allow user to choose packages)
By setting this line to "on," you can let your users choose which Java modules are downloaded to their clients. They are presented with a list of checkboxes, and can pick and choose whatever they want. The default options are pre-selected based on the modules listed in the JavaClientPackages line.
Of you set this option to "off," then users are not given this option and the values from the JavaClientPackages line are used.