Technical Notes |
|
This technical note provides an overview of Reflection for the Web's Personalization feature. The basic implementation uses a default plug-in and data source.
Note: For information about how to personalize Reflection for the Web sessions with information stored in an SQL Server database (or any database with a jdbc driver), see Technical Note 1835.
In this note:
Personalization is the ability to customize the applet parameters for a Reflection for the Web session based on an attribute of the end user, such as identity, IP address, or DNS name. Any valid Reflection for the Web applet parameter, including device name and answerback, can be customized based on which user is running the Reflection session.
Refer to the following terms when using the personalization feature.
Plug-in: a piece of code that enables the Reflection for the Web management server to read personalization data from a data source. Reflection ships with a default plug-in, which can be used to read personalization data from a flat file (p13n_data.txt) on the Reflection management server. You can also write a custom plug-in to read from whatever data source you prefer to use.
Data source: a file used to store data mappings of user attributes to applet parameter values. A compatible plug-in is required to read the data source.
p13n_data.txt: a flat file stored on the Reflection for the Web management server that acts as a data source file for the default plug-in. The file can be used to store personalization data. Each line in the file utilizes four fields, separated by colons, to define these attributes:
The p13n_data.txt file ships with Reflection for the Web management server and contains comments describing how to use it.
Note: The basic implementation described in this technical note uses a default plug-in and a flat file data source. However, other data sources and plug-ins, including SQL databases, are also supported. If you are interested in a custom plug-in, contact Attachmate Technical Services, http://www.attachmate.com/Products/Technical+Services/.
To enable the Personalization feature, you must edit two files in the ReflectionData folder to identify the default plug-in and to create the data source.
Open <install path>\ReflectionData\PropertyDS.XML and locate the following lines:
<CORE_PROPERTY NAME="AC.P13nPlugin"><STRING></STRING></CORE_PROPERTY><CORE_PROPERTY NAME="AC.P13nPlugin"><STRING>DefaultPlugin</STRING></CORE_PROPERTY> Follow the steps in this section to create a customized data source by inserting your preferred data mappings into the p13n_data.txt file.
Parameters. For information on valid parameters, see the Administrative WebStation > Advanced > Applet Attributes and Parameters > Index of Attributes and Parameters.
Personalization is most commonly used with the parameters for device name, answerback, and terminal IDs. For example:
Airline Protocols. The terminal IDs for Airlines Printing, ALC, T27, and UTS sessions can be configured using applet parameters.
| Emulation |
Protocol |
Parameter |
Value |
Notes |
| Airlines Printer & ALC |
Airgate |
airgateTerminalID |
any string |
|
| |
Apollo |
atstcpWorkstationName |
any string |
|
| |
|
atstcpGTID |
an integer |
GTID Value |
| |
|
atstcpGTIDIndex |
an integer |
GTID Index |
| |
Lantern |
lanternTerminalAddress |
2-byte hex value (00 - FF) |
|
| |
Matip |
matipAddressH1 |
2-byte hex value (00 - FF) |
|
| |
|
matipAddressH2 |
2-byte hex value (00 - FF) |
|
| |
|
matipAddressA1 |
2-byte hex value (00 - FF) |
|
| |
|
matipAddressA2 |
2-byte hex value (00 - FF) |
|
| |
|
matipAddressA2 |
2-byte hex value (00 - FF) |
|
| |
|
matipAddressTA |
2-byte hex value (00 - FF) |
for UTS, this will set the SID property |
| |
Sabre |
sabreLniataAddress |
6-byte hex value (000000 - FFFFFF) |
specify either sabreLniataAddress or sabreLniataClass |
| |
|
sabreLniataClass |
any string |
specify either sabreLniataAddress or sabreLniataClass |
| |
Shares |
udpfradLNIATA |
6-byte hex value (000000 - FFFFFF) |
|
| T27 |
Tcpa |
TcpaTerminalID |
any string |
in Reflection for the Web 2008 |
| |
|
TxTerminalID |
any string |
in Reflection for the Web version 9.6 |
| UTS |
Int1 |
int1TerminalID |
any string |
|
| |
Matip |
(see Matip list above) |
|
|
| |
Pepgate |
pepgateSCRID |
any string |
specify either pepgateSCRID or pepgateRIDSID |
| |
|
pepgateRIDSID |
RxxSxx, where xx is 2-byte hex value |
specify either pepgateSCRID or pepgateRIDSID |
Properties. Many properties can also be used with personalization. For a list of valid properties, see the Administrative WebStation > Advanced > API and Scripting > API Reference.
Note: If you want to personalize a setting based on a client machine IP address or client machine domain name, an authentication method that establishes user identity is not required.
Note: If the authentication method is None, then the identity of the end user cannot be determined.
[USER DN | ID]:[DNS | IP]:[SESSION]:[PARAM="VALUE"] [,PARAM="VALUE"] [USER DN or ID]:[DNS or IP] The following table describes and displays sample values for each field in p13n_data.txt.
| Field 1 |
Field 2 |
Field 3 |
Field 4 |
| User Identity (see Note below) |
DNS name or IP Address of end user machine |
Session name |
Comma-delimited list of applet parameters and values |
| [USER DN | ID] |
[DNS | IP] |
[SESSION] |
[PARAM="VALUE"] [,PARAM="VALUE"] ... |
| john |
machine1.atm.com |
session1 |
testParam="ddd" |
| cn=john,ou=sales, dc=acompany,dc=com |
150.215.70.5 |
|
testParam1="ddd", testParam2="eee" |
| |
150.215.70.* |
|
|
| |
150.215.*.* |
|
|
| |
150.*.*.* |
|
|
Note: When the default plug-in is used, LDAP groups cannot be used for User Identity (Field 1). Other plug-ins and methods, however, can provide this functionality.
The following scenarios may help you determine how to enter specific lines to map your data preferences in the p13n_data.txt file. The scenarios progress from less specific entries to more specific (and therefore more restrictive) entries.
Set the device name to aaa and set all session titles to Company XYZ Session for all users:
::: deviceName="aaa", title="Company XYZ Session"The three colons (:::) are equivalent to wildcards for the User Identity, DNS/IP, and Session name fields.
Set the device name to bbb for a session named session1, regardless of the user identity or DNS/IP address.
::session1: deviceName="bbb" The two leading colons (::) are equivalent to wildcards for the User Identity and DNS/IP fields.
Set the device name to eee for any user accessing session1 from this IP address, 10.125.170.120.
:10.125.170.120 : session1 : deviceName="eee"The leading colon (:) is a wildcard for the User Identity field.
Set the device name to eee for any user accessing session1 from this IP address, 10.125.170.*.
:10.125.170.* : session1 : deviceName="eee"The leading colon (:) is a wildcard for the User Identity field. The asterisk (*) acts as a wildcard for the last octet of the IP address and will match any address in the 10.125.170.* subnet.
Set the answerback value to a specified value for each listed user when session2 is accessed from a machine with DNS name *.xyz.company.com.
maryc:*.xyzcompany.com:session2: declans="abc"johnd:*.xyzcompany.com:session2: declans="def"janee:*.xyzcompany.com:session2: declans="ghi"The asterisk (*) acts as a wildcard in the domain name, *.xyzcompany.com.
In Airlines Printing sessions, there can be multiple routes per session. To specify which route the parameter is intended for, use this syntax:
[AirlinesRoute\:ROUTE.PARAM="VALUE"] [, AirlinesRoute\:ROUTE.PARAM="VALUE"]Note: For personalization, the colon (:) must be preceded by a backslash (\) because the personalization data parser uses a colon as a field separator.
Follow these examples.
johnd:*.xyzcompany.com:session2: matipAddressA1=10, matipAddressA2=20, matipaddressH1=30, matipAddressA4=40, matipAddressTA=50
johnd:*.xyzcompany.com:session2: AirlinesRoute\:MyRoute1.matipAddressA1=10, AirlinesRoute\:MyRoute1.matipAddressA2=20, AirlinesRoute\:MyRoute1.matipaddressH1=30, AirlinesRoute\:MyRoute1.matipAddressA4=40, AirlinesRoute\:MyRoute1.matipAddressTA=50 |
After you enter the lines into the data source and save the p13n_data.txt file, open a session for which you added personalized settings, and verify that the affected fields are populated.
Here are some ways to verify the changes:
For example, the declans applet parameter is used to set the VT Answerback. To view the Answerback value, run the VT session and click Setup > Terminal > Emulation (tab) > Advanced (button). The Answerback message field is in the middle of the Advanced VT Options dialog box.
Note: the Setup Terminal dialog is only visible if the session is configured for Advanced or Administrator menus.
The applet parameter and desired value should appear in the HTML source.