Professional Documents
Culture Documents
Administrator Guide
This document is the property of Compass Plus Ltd (hereinafter ‘Compass Plus’) and the
information contained herein is confidential. The information contained in this document, either in
whole or in part, must not be reproduced or disclosed to others or used for purposes other than
that for which it has been supplied, without Compass Plus’s prior written permission, or, if any part
hereof is furnished by virtue of a contract between Compass Plus and a third party, as expressly
authorized under that contract.
TW ITP - AG.ENG.2.5.2008
Contents
1 Revision History
.................................................................................................. 5
2 System Architecture
.................................................................................................. 6
4 ITPService .................................................................................................. 9
4.1 Functionality
........................................................................................................ 10
4.2 Start........................................................................................................
Parameters 11
4.3 Setup
........................................................................................................ 12
4.3.1 Structure of
..........................................................................................
Directories 12
4.3.2 Itplogin.scr
..........................................................................................
File 13
4.4 Start........................................................................................................
ITPService 15
4.5 Stop........................................................................................................
ITPService 17
4.8 Delete
........................................................................................................
ITPService 20
5.1 Functionality
........................................................................................................ 22
5.2 Start........................................................................................................
Parameters 23
6 CPI Licensing
.................................................................................................. 32
7 ITPCmd Utility
.................................................................................................. 33
7.1 Functionality
........................................................................................................ 34
7.2 Start........................................................................................................
Parameters 35
TW ITP - AG.ENG.2.5.2008 3
7.3 ITP Parameters
........................................................................................................ 36
7.4.5 Interface of
..........................................................................................
Line Requests to ITP 42
7.4.6 Monitoring.......................................................................................... 43
7.4.10Change Password
.......................................................................................... 47
7.4.11Administrate
..........................................................................................
Users 48
7.5 ITPCmd
........................................................................................................
External Functions 49
7.6 Examples
........................................................................................................ 50
7.6.1 Example of
..........................................................................................
ITPCmd Start in Interactive Mode 51
7.6.2 Example of
..........................................................................................
ITPCmd Start with Command Execution 52
4 TW ITP - AG.ENG.2.5.2008
Revision History
1 Revision History
TW ITP - AG.ENG.2.5.2008 5
System Architecture
2 System Architecture
TWCMS is implemented on basis of the terminal-server technology, i.e. the whole data
domain is executed on the application server. So, each operator's workstation has
Intellectual Terminal Client (ITC) installed. ITC does not interact with data stored in
the database and with TWCMS internal objects, it executes no functions. ITC only uses
ITP protocol (protocol used to display information on the screen) to interact with the
application server.
The application server has an ORACLE instance, where the whole data domain of the
complex is compiled. Alongside the ORACLE instance, there is a CPI module in
OS-depending part. CPI directly interacts with the terminal by means of the ITP protocol
and enables to refer to the database, at that it establishes a dual connection: 1
ORA-connection and 1 IP-connection.
ORA-connection
CPI does not directly interact with data stored in the database, either. This module
has no data domain, it is based only on ITP protocol via which it interacts with
outside and can activate the data domain start procedure, so-called package
JavaPort, that is present in the database.
6 TW ITP - AG.ENG.2.5.2008
System Architecture
In other words, after the connection to ORACLE is established, the system starts
package JavaPort which in essence organizes the server functioning.
IP-connection
IP connection is established.
After receiving information from ORACLE, CPI places it in ITP protocol and sends a
request to the terminal. The terminal identifies this request and reacts respectively:
displays some data on the screen, interacts with any terminal resources and with
outside. Inversely the server module receives events from the terminal (reaction to
pressed buttons, information entered to the fields and so on, including responses from
external devices).
Thus, CPI sees all the resources on the server (the whole file system of the server as
well as all the devices present on the server), at that it can work both with parallel and
successive ports, printers etc. In its turn, the ITC terminal sees all the resources on the
station (successive and parallel ports, printers etc.). The modules interaction results in
data exchange, i.e. when working in TWCMS complex it is possible to see and work both
with server and terminal resources.
Examples of how the terminal resources are used can be as follows: the disk subsystem
used to save information to files, a device used to change PIN code, e.g. PIN-PAD (the
information is sent to the server via ITP protocol and the server itself interacts with
HSM).
This method of operator-program interaction has the following advantages:
First, it actually provides OS-independence, since the whole data domain is
implemented in the ORACLE stored procedures. The module in written in C++, its
size is not large and it can be easily transferred from one platform to another.
Second, this method of interaction allows to considerably economize the
interaction traffic between the terminal and the server, what is especially
important on unstable connection lines.
Thirdly, it provides security of data transfer. Even when channel hardware
encryption is absent, both sides have an option to encrypt or pack information (it
depends on the ITP protocol parameterization). At present two mechanisms of
data encryption are supported: DES and TRIPLE DES. The data package before
transfer has a great importance for production increase.
Fourthly, it enables to increase the system fault tolerance. As the whole
application domain operates on the server, in case the connection is broken, the
module continues working and the operator has the possibility to re-connect.
TW ITP - AG.ENG.2.5.2008 7
Oracle Database Creation Parameters
8 TW ITP - AG.ENG.2.5.2008
ITPService
4 ITPService
Functionality
Start Parameters
Setup
Structure of Directories
Itplogin.scr File
Start ITPService
Unix
Windows
Stop ITPService
Unix
Windows
Obtain Working Status
Locally on Unix
Locally on Windows
Remotely
Obtain Version
Delete ITPServicе
Unix
Windows
TW ITP - AG.ENG.2.5.2008 9
ITPService
4.1 Functionality
10 TW ITP - AG.ENG.2.5.2008
ITPService
ITPService is an ITP network service for TCP/IP and X25 networks and connections via
the COM port. The ITPService functioning after the connection is established is
completely determined by the itplogin.scr script file written in the ITPScript language.
The creation of such file is described below.
A standard scenario includes the customer identification and the start of the respective
server application to which the identifier of the opened connection is transmitted. The
customer identification can be performed using either own file of passwords or OS
authorization. To perform OS authorization, the service process should have the
respective privileges in OS. The service can also provide the possibility to identify the
customer to the server application.
When functioning, ITPService can keep a run-time journal and a debug file. On
Windows NT (2000, 2003, XP), ITPService writes error messages to the system event
log, it also writes the run-time journal there if the respective option is enabled.
TW ITP - AG.ENG.2.5.2008 11
ITPService
4.3 Setup
ITPService does not require any rigid structure of directories on the disk. The structure
of directories depends on the server applications installed. All the settings are defined in
the itplogin.scr script file.
12 TW ITP - AG.ENG.2.5.2008
ITPService
Before starting ITPService, it is necessary to create the itplogin.scr script file (an
example of the file is included in the Examples | ITP_CMD distributive directory
supplied). The itplogin.scr file represents a program in the ITPScript language the
syntax of which is similar to that of the C language.
The processing of exception is supported. The ITPScript language enables to use
external functions and create own ones. The void main() function is an entry point.
When defining relative paths, it is necessary to consider that the ITPService current
directory resides in the same place as ITPService.
TW ITP - AG.ENG.2.5.2008 13
ITPService
void becomeUser(String userName); Only for Unix: changes the user context for connection.
void showStatus(); Displays the message of ITPService working status on
the terminal (see Obtain Working Status).
14 TW ITP - AG.ENG.2.5.2008
ITPService
Unix
Windows NT (2000, 2003, XP)
Unix
On Unix, ITPService functions as a process: daemon.
Start parameters:
itpsrv run <netargs> [-log <file>] [-dbg <file>] [-console]
Parameters:
1. <netargs> - network parameters:
tcp <port> [-gate <netmask>] - the parameters of working over the
TCP/IP network:
-- <port> - TCP/IP port number. The maximum value is 65536.
-- -gate <netmask> - TCP/IP network mask for local connections; for
other connection types: the customer program connects to the
ITPService port, after that ITPService transfers the descriptor of the
connection established to the customer program via the named
channel.
comm <<name>:<speed>:<bits>:<parity>:<stop>:<flow>> - the
parameters of working via the COM port:
-- <name> - COM port name.
-- <speed> - data transfer rate (2400, 9600, 19200 …).
-- <bits> - bits per character (7, 8).
-- <parity> - parity check: N – no check; O – odd, E – even.
-- <stop> - stop bits (1, 15, 2).
-- <flow> - flow control: N – no control, H – hardware, S – software.
2. -log <file> - the name of the file containing the run-time journal.
3. -dbg <file> - the name of the file containing the debug information. 'Stdout' and
'stderr' names mean the data display on the screen.
4. -console – start as a console application. If the option is disabled, start as
daemon.
To start ITPService automatically when starting Unix, it is necessary to place the file
with the script for starting ITPService to /etc/rc2.d directory.
TW ITP - AG.ENG.2.5.2008 15
ITPService
16 TW ITP - AG.ENG.2.5.2008
ITPService
1. Unix
To stop ITPService, send SIGTERM signal to the ITPService process.
kill <itpservice_pid>
TW ITP - AG.ENG.2.5.2008 17
ITPService
1. Locally on Unix
Unix has no own facilities to obtain the ITPService working status; for this
purpose 'ps' command is used:
ps –ef | grep itpsrv
3. Remotely
The ITPService working status can be obtained either remotely or locally, from
the server. To obtain the status via the network, it is necessary to perform as
follows: in the itplogin.scr file define the showStatus() function start (see External
Functions) by the TARGET environmental variable value on the terminal, e.g.
'STATUS'. At that, a message similar to the following one will be received from the
server:
Machine/OS information :
Machine name ............ EXCHANGE
Platform .................... Microsoft Windows 2000, Advanced Server
OS version ................ 5.0.2195, Service Pack 2
Processors count ........ 1
ITPService times :
Start time ................. 2001/12/03 14:57:28
Kernel time ............... 00:00:00
User time .................. 00:00:07
ITPService security :
Owner ...................... EXCHANGE\itp_service
Group ...................... EXCHANGE\None
Counters :
Serviced connects ..... 13
Success OS logons .... 0
Success own logons .. 7
Executed programs ... 7
Reattaches ............... 0
Errors ...................... 0
Running applications :
Process id 680, path itpcmd.exe, start time 12/03 15:35:29
18 TW ITP - AG.ENG.2.5.2008
ITPService
TW ITP - AG.ENG.2.5.2008 19
ITPService
1. Unix
To prohibit the ITPService autostart, delete the respective script from /etc/rc2.d
directory.
20 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
TW ITP - AG.ENG.2.5.2008 21
CPI - TWCMS Application Server
5.1 Functionality
22 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
For all commands <name> - the service name (by default CPIService)
-host_interface Enables CPI to work as online service v1.
-images_cache_size Disk space (bytes) for image caching.
<size>
-upload_term_distrib Starts CPI in order to update ITC distribution kit on the host. <password_file>
<password_file> - the file containing passwords of the users having rights to perform this
operation.
-term_distrib_dir Orders CPI to upgrade ITC from the specified directory containing ITC
<distrib_dir> distribution kit.
-fs_access_dirs Starting with CPI version 2.4.14. it is possible to regulate access to host
directories.
If the CPI version is lower than 2.4.14, it is allowed to access all the
directories on the host.
TW ITP - AG.ENG.2.5.2008 23
CPI - TWCMS Application Server
Along with the command line, CPI parameters can be defined in the cpi2.config
configuration file of XML format (for details of the XML file structure refer to the TWCMS.
File Structures specification).
This file must reside in the same directory as CPI program. If the cpi2.config file is not
present in the directory, when starting CPI only start parameters are used.
Since the name of the cpi2.config file is case sensitive, when naming the file for SUN
Solaris it is necessary to use the upper case: CPI2.config.
The following table illustrates the file structure:
Tag/Attribute Terminal variable Description
Tag "Config" General settings.
Attribute "Mission" СPI functionality:
APP_SERVER – TWCMS application server (default
value) that serves ITC terminal connections.
ONLINE_SERVICE1 – out of date, similar to
–host_interface parameter.
ONLINE_SERVICE2 – provides other programs with
network access to TWCMS, e.g. TranzWare Online.
When using ONLINE_SERVICE2 it is necessary to
define the connection destination in Attribute "InitParams"
.
Attribute "Protocol" Data transfer protocol:
ITP_DIALOG - data are transferred via ITP_DIALOG
resource (default value);
ITP_PORT - data are transferred via ITP_PORT
resource;
TCP - data are transferred via TCP/IP connection;
TCP_SSL - data are transferred via TCP/IP connection
and SSL protocol.
Attribute "AloneService" FALSE – CPI is started by ITPService (default value);
TRUE – CPI functions as a separate service.
Attribute "BaseAlias" Connections / Oracle database name for connection.
<Connection>
/ Oracle database
name
Attribute "User" inquired if it is not
User in Oracle database, created in TWCMS. For Batch
defined in CPI Processor it is necessary to use a separate special TWBP
settings user.
Attribute "Password" Password in Oracle database.
Attribute "Language" Terminal / Language ITC terminal message language:
ENGLISH (default value);
RUSSIAN.
Attribute "Reattachable" Connections / FALSE - in case the connection is broken the session is
<Connection> / closed (default value);
Application / Option TRUE - in case the connection is broken the session can
to reconnect the be continued after reconnecting.
session
Attribute Terminal / Enables to keep sessions opened after they are terminated
"MaxIdleSessions" Application / until the number of such sessions reaches the number
Maximum number of specified in Oracle in order to use them again when it is
inactive sessions necessary to create a new session with similar initialization
parameters.
For Batch Processor the attribute MaxIdleSessions=0,
otherwise the blocking error occurs.
For statements and TW CDIS MaxIdleSessions must differ
from 0.
By default - 0.
24 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
TW ITP - AG.ENG.2.5.2008 25
CPI - TWCMS Application Server
Attribute "PwdFile" File containing passwords of the users that can upload ITC
program to the host (similar to -upload_term_distrib
parameter).
Attribute "DistribDir" Directory containing program for ITC Upgrade (similar to
-term_distrib_dir parameter).
Service Setup
1. Set up cpi2.config file.
This file must reside in the same folder as the cpi2.exe file.
An example of a configuration file for Online service see below.
2. Install cpi2.exe as service.
To perform it, the сpi2.exe and cpi2.config files must reside in a separate
directory, but not in the directory where the сpi2.exe file used for access to
TWCMS of ITC terminals resides. The parameters of the cpi2.config file for Batch
Processor differ from the parameters for statements and TW CDIS, therefore files
for Batch Processor must reside in another directory and be performed by a special
service.
Installation is performed by the following command:
cpi2.exe install
The command installs the service under 'CPIService' name.
3. Start the service.
After CPIService is successfully installed, it is necessary to start it.
CPIService is started by the following command:
cpi2.exe start
4. In TranzWare Online it is necessary to perform the following settings:
Load Core Banking Authorizer driver to TranzWare Online Instance.
Set up Core Banking authorizer to the required address and port.
Define name of Core Banking host user (Login).
26 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
TW ITP - AG.ENG.2.5.2008 27
CPI - TWCMS Application Server
28 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
CPI establishes a new connection in Oracle every time a new TWCMS application is
started. In order to cut the time required to start a new application with similar settings
on the ITC terminal (see TWCMS main documentation: ITC - Intellectual Terminal
Client section) sessions are cached in Oracle. It means that when a TWCMS application
is closed, CPI does not close the session in Oracle on the instant, but puts it into the
session cache. The cache can include the number of sessions not exceeding that
determined by the Maximum Number of Inactive Sessions ITC parameter. The
inactive session lifetime expires when new sessions are cached or according to the
Inactive Session Lifetime ITC parameter.
The more detailed information on ITC parameters can be obtained in TWCMS main
documentation: ITC Settings section.
TW ITP - AG.ENG.2.5.2008 29
CPI - TWCMS Application Server
When selecting the connection it is necessary to define the user name and
password for ITC distribution kit upgrade (see Item 2).
30 TW ITP - AG.ENG.2.5.2008
CPI - TWCMS Application Server
To set up the itplogin.scr file it is necessary to find there the section of settings that
resides in the beginning of 'main' function and define the respective parameters there.
Example of settings:
//************Setup************
// Oracle home directory
String oracle_home = "c:\\Oracle";
// Path to CPI
String cpi = "cpi4.exe";
// Debug file Extract/Refresh
String extref_dbg = "c:\\exchange.dbg";
// Use ITC Upgrade
bool itc_upgrade = true;
// Path to ITC distribution kit
String itc_home = "c:\\a4m\\itc";
// File containing password for ITC distribution kit upgrade
String itc_pwd = "c:\\a4m\\bin\\itc.pwd";
//*************************************
TW ITP - AG.ENG.2.5.2008 31
CPI Licensing
6 CPI Licensing
TWCMS software is protected from illegal copying by means of Guardant electronic keys.
An electronic key represents a device hardwired to parallel (LTP) or USB port of a
computer. For TWCMS, only server electronic keys are used that are installed on the
servers the ITPService application is started from.
Generally, the scheme is as follows:
The application is tied to the key using special software.
When being started, CPI reads the key identifier from the Licenses.xml file and
exchanges the obtained data with the key to identify it.
If the key is absent or has incorrect parameters, the CPI application does not
function.
To install an electronic key perform as follows:
1. Plug the key in the respective computer port.
2. Start the instdrv.exe file; the file comes with the TWCMS software.
3. Restart the computer. If the USB key is successfully installed, the indicator on the
key reverse side must light up.
The Licenses.xml file comes with Upgrade and must reside in the directory from which
ITPService is started. For example, C:\CPI2\NT\BIN. If such file is absent in the
directory, the system generates an error message and stops starting CPI.
The Licenses.xml file contains as follows:
identifiers of keys <Key Id>
license expiration date <Expiration>
number of instances <Instances>
trial group to support ITC functioning during 60 minutes in case the key is absent
<LicenseGroup Name="Trial">
The Licenses.xml file is view-only and protected by an electronic digital signature.
The trace of the key (license) working can be obtained in the host debug file.
The keys are programmed and supplied by Compass Plus.
32 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
7 ITPCmd Utility
1. Functionality
2. Start Parameters
3. ITP Parameters
4. ITPCmd Commands
5. ITPCmd External Functions
6. Examples
TW ITP - AG.ENG.2.5.2008 33
ITPCmd Utility
7.1 Functionality
34 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
TW ITP - AG.ENG.2.5.2008 35
ITPCmd Utility
ITP parameters can be defined in the command line and 'itp' environment.
ITP parameter format is as follows: 'parameter=value {parameter=value}':
Parameter/ Syntax Description
(default value)
o (mandatory) h|t Defines the program role: 'h' - host, 't' - terminal.
c (mandatory) pipe | tcp(<port>) | Defines the network connection parameters:
tcp(<address>:<port>) | pipe – the network connection descriptor, it is
comm(<name>:<speed>: transferred by ITPService via pipe;
<bits>: tcp([address:]<port>) – the program is waiting for
<parity>:<stop_bits>: connection to TCP/IP <port> port, where:
<flow_ctl>) | eicon(<c | address - TCP/IP address to wait for connection;
l>:<x25address>) | if it is not specified, the first available network
script(<script_file_name>) interface on the computer is used
port - TCP/IP port to wait for connection
Parameters in square brackets [ ] are not mandatory.
tcp(<address>:<port>[:<proxy_address>:<proxy_po
rt>] – the program connects to the address and
TCP/IP port specified, where:
address - TCP/IP address or name of the host to
be connected
port - TCP/IP port of the host to be connected
proxy_address - TCP/IP address or name of the
proxy server
proxy_port - TCP/IP port of the proxy server
Parameters in square brackets [ ] are not mandatory.
comm – RS232 port is used as a network;
eicon – ITP functions over X25 network via Eicon card:
<c> - receives connection to <x25address> address,
<l> - establishes connection to <x25address>
address;
script – the connection is established as a result of the
script functioning in the IPScript language.
p (n) n|y For the server: enables to create control channel for
external requests; 'y' - create, 'n' - do not create.
s (nsht) n, s, h, t Enables to use separate connections: 'n' - do not use, 's' -
to server, 'h' - to host, 't' - to terminal.
z (nd) n, d Enables to use compression: 'n' - no compression, 'd' -
deflate.
y (ndt) n, d, t Enables to use encryption: 'n' - no encryption, 'd' - DES, 't'
- Triple DES.
w (n) n|y Enables to use watchdog: 'y' - use, 'n' - do not use.
a <user>/<password> Defines the name and password for connection.
e <name>:<value> Adds ITP environment variable, can include several
options.
d <debug_file> | stdout | Defines the debug file; 'stdout' and 'stderr' mean the data
stderr are displayed on the screen.
36 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
Copy Files/Directories
Move or Remove Files/Directories
View Directory Contents
Test Connection - Send/Receive Echo
Interface of Line Requests to ITP
Monitoring
Send Message
Inquire Information on ITP Session
Execute ITPScript Script File
Change Password
Administrate Users
TW ITP - AG.ENG.2.5.2008 37
ITPCmd Utility
38 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
TW ITP - AG.ENG.2.5.2008 39
ITPCmd Utility
40 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
echo [-reattach]
Parameters:
-reattach – for 'reattach' testing, it is activated on the host.
TW ITP - AG.ENG.2.5.2008 41
ITPCmd Utility
The interface of line requests to ITP, the answer is displayed on the screen.
si <command1> [command2 ...]
Parameters:
command – the line request.
42 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
7.4.6 Monitoring
TW ITP - AG.ENG.2.5.2008 43
ITPCmd Utility
44 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
info session
It is applied in ITP command processor.
TW ITP - AG.ENG.2.5.2008 45
ITPCmd Utility
The command enables to execute the ITPScript script file. External functions available to
be used in ITPScript can be obtained in ITPCmd External Functions section. The 'void
main()' function is an entry point.
script <script_file>
Parameters:
script_file – the script file.
46 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
TW ITP - AG.ENG.2.5.2008 47
ITPCmd Utility
accmgr
The command is used by an administrator to perform as follows:
create new users on ITP server;
change user password on ITP server;
delete users on ITP server;
view the list of users on ITP server.
48 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
TW ITP - AG.ENG.2.5.2008 49
ITPCmd Utility
7.6 Examples
50 TW ITP - AG.ENG.2.5.2008
ITPCmd Utility
TW ITP - AG.ENG.2.5.2008 51
ITPCmd Utility
52 TW ITP - AG.ENG.2.5.2008