Application Server

Session Object Properties

Each new session, whether created from a request by *CLIENT or from a *SERVER;SPAWN, has an OOP object whose object identifier is stored in %APS that can be used to get information about a session's characteristics.

Example:

The following test can be applied to determine if program code is running within an Application Server session:

     if %APS and %APS'SessionID$>""
        then UsingAppServer=1

Not all properties will be available in all sessions or for all circumstances.

Server-Side Information

The following %APS properties provide information about the PxPlus process on the server-side:

Administrator$

Unused - future feature.

AllowConsoleMode$

0 = No access to console mode
1 = Console mode allowed

AllowReconnect

Numeric value representing the type of reconnect allowed.

0 = None

AppEnvVars$

Unused - future feature.

AppName$

Name of the application that the user requested to be run.

AppUMask$

(UNIX/Linux) File creation umask with which the session was created (not honored by all OS's).

Arguments$

Additional arguments passed to this session by a request from the client.

ClientConnectionID$

Internal socket number (IND value) that the server daemon has for the client side of the connection.

ClientConnTimeStamp

8-decimal place Julian time/date when the client-side process connected to the server daemon.

ClientDomain$

(Windows Only) OS domain name from the client-side workstation.

ClientLang$

The 2-character language code that the client is using.

ClientNID$

PxPlus NID (machine ID) from the client-side process.

ClientOS$

Descriptive name of the client's operating system.

ClientPID$

OS process ID for the client-side process (from client).

ClientSoftware$

The "WindX"client software that is connecting.

ClientSoftwareVersion$

9-digit number representing the client's software version with 7 being the PxPlus TCB(29) and 2 being the WindX major revision code.

ClientsOfType$

Client access.

Where:

1 = Any kind of client can access
2 = WindX clients only

ClientTCPProperties$

String of TCP/IP characteristics: IP; socket; machine for the channel that the client-side process has opened to the server daemon.

ClientUID$

PxPlus UID from the client-side process.

ClientUSR1$

The client's user-defined string information from the –USR1 argument.

ClientUSR2$

The client's user-defined string information from the –USR2 argument.

ClientUSR3$

The client's user-defined string information from the –USR3 argument.

ClientUSR4$

The client's user-defined string information from the –USR4 argument.

ClientWHnd$

(Windows Only) OS Window handle for the client-side process (from the client machine).

ClientWHO$

PxPlus WHO from the client-side process.

ConnMethod$

"" if the session was started by *CLIENT or "Spawn" if started by *SERVER;SPAWN.

CreatedTimeStamp

8-decimal place Julian time/date when the session was first created.

DestroyedTimeStamp

8-decimal place Julian time/date when the session was terminated.

DetachSpawns$

0 = Spawns new sessions as attached processes
1 = nohup any new spawns

ExtraCMDOptions$

Additional command line parameters passed to this session by a request from the client.

FIDValue$

FID(0) value requested by the client.

KeepAlives$ 

0 = No KeepAlives
1 = Using KeepAlives

Lang$

Language code: EN or FR, etc.

LeadProgram$

CONSOLE for a console mode session, or PxPlus program name used as the lead program for the server-side session (LPG contains internal use information only).

ListeningSocket$

TCP/IP socket number to which the server daemon is listening for ServerName$.

MaxWindXVer$

9-digit number representing the maximum WindX version which may connect (all 0's is any).

MinWindXVer$

9-digit number representing the minimum WindX version which may connect (all 0's is any).

Protocol$

Always set to PVXAS/1.0.

PxPlusEXELocation$

Location of the PxPlus executable used to start the client process and to start any subsequent spawns from the Application server.

SecureSSL$

0 = Normal session
1 = SSL-encrypted session

ServerConnectionID$

Internal socket number that the server daemon has for the server side of the connection.

ServerConnTimeStamp

8-decimal place Julian time/date of when the server-side process connected to the server daemon.

ServerDir$

Always set to *APPSERV.

ServerName$

Name of the Application Server through which the session is being run.

ServerPID$

OS process ID for the server-side process.

ServerProg$

Name of the server-side program that was launched to start the physical session, usually *SERVER.

ServerProgLabel$

Name of the entry point for the server-side program that was launched to start the physical session, usually Launch.

ServersINI$

INI file that the server-side process was told to use by the Application Server.

ServerTCPProperties$

A string of TCP/IP characteristics: IP; socket; machine for the channel that the server-side process has opened to the server daemon.

ServerUID$

PxPlus UID for the server-side process.

ServerUserDomain$

(Windows Only) OS domain name that the server-side session was launched as.

ServerUserName$

OS user name that the server-side session was launched as.

ServerWHnd$

(Windows Only) OS window handle for the server-side process.

ServerWHO$

PxPlus WHO for the server-side process.

SessionID$

Session identification token. Each session is identified by a unique token between 17 and 24 characters.

SessionStatus

Session status.

Where:

    0 = None connected
    1 = One side connected
    2 = Both sides connected
255 = Terminated

ShowSpawnsOnDesktop$

(Windows Only)

1 = Server to show tasks on taskbar
0 = Server to hide task bar buttons

SocketOptions$

TCP/IP socket options that the server-side session is using to talk to the server daemon.

StartInDirectory$

Directory in which the current session was told to start by the application.

Client-Side Information

The following %APS properties provide information about the PxPlus process on the client-side:

AllowReconnect

Numeric value indicating what type of reconnect, if any, is allowed for this session.

AppName$

Name of the application that the user requested to be run.

ClientArguments$

Additional arguments for the server process that the client requested.

ClientCMDOptions$

Additional command line parameters for the server process that the client requested.

ClientDomain$

(Windows Only) Client workstation's OS domain name.

ClientFID$

FID(0) value requested by the client.

ClientINI$

INI file in use for the client-side process.

ClientLabel$

Name of the entry point for the client-side program which was launched to start the physical session, usually "" or Spawn.

ClientNID$

PxPlus NID (machine ID) from the client-side process.

ClientOS$

Descriptive name of the client's operating system.

ClientPID$

OS Process ID for the client-side process.

ClientSoftwareVersion

9-digit number representing the client software's version (7 being the PxPlus TCB(29) and 2 being the WindX major revision code).

ClientStartinDirectory$

The start-in directory for the server process that the client requested (not the client's start-in directory).

ClientTCPProperties$

String of TCP/IP characteristics: IP; socket; machine for the channel that the client-side process has opened to the server daemon.

ClientUID$

PxPlus UID from the client-side process.

ClientUSR1$

Value that has passed to the client on the command line for –USR1.

ClientUSR2$

Value that has passed to the client on the command line for –USR2.

ClientUSR3$

Value that has passed to the client on the command line for –USR3.

ClientUSR4$

Value that has passed to the client on the command line for –USR4.

ClientWHnd$

(Windows Only) OS Window handle for the client-side process.

ClientWHO$

PxPlus WHO from the client-side process.

KeepAlives$

0 = Do not use KeepAlives
1 = Use KeepAlives

Lang$

Language code: EN or FR, etc.

LeadProgram$

Name of the lead program that the user supplied from a spawn request.

Protocol$

Always set to PVXAS/1.0.

PxPlusEXELocation$

Location of the PxPlus executable used to start the client process and to start any subsequent spawns from the Application Server.

SecureSSL$

0 = Normal session
1 = SSL-encrypted session

ServerDir$

Always set to *APPSERV.

ServerName$

IP address or DNS resolvable machine name of the server that the client used to contact the server initially.

ServerSocket$

TCP/IP port or socket number that the client used to contact the server.

SessionID$

Session identification token. Each session is identified by a unique token between 17 and 24 characters.

SocketOptions$

TCP/IP socket options that the client-side session is using to talk to the server daemon.